Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> php curl и https 
V
    Опции темы
Predator199
Дата 12.2.2015, 18:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 412
Регистрация: 1.2.2012

Репутация: -3
Всего: -4



У меня следующая проблема возникла.
Есть два сайта, один доступен через протокол http://. С него же или сказать на нем скрипт безпроблем авторизовывается.

Второй же сайт доступен через протокол https://. Вот на нем та и проблемы.

Подключил библиотеку "php_openssl.dll", все равно не работает.

Использую следующий код

Код

$ch = curl_init('https://www.sait.ru/login/');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, array("name"  =>"name","pass" =>"pass" ));                                   
curl_setopt($ch, CURLOPT_COOKIEJAR, __dir__ ."/my_cookies.txt");  
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
curl_exec($ch); 
curl_close($ch);


Помогите, в ssl сертификатов я полный ноль. Как мне узнать какой именно сертификат используется сайтом и какие команды необходимо дописать. В нете полно всего, еще в больший тупик захожу...
PM MAIL   Вверх
baldina
Дата 12.2.2015, 19:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3433
Регистрация: 5.12.2007
Где: Москва

Репутация: 26
Всего: 101



проще всего отключить проверку
Код

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);


PM MAIL   Вверх
Predator199
Дата 12.2.2015, 22:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 412
Регистрация: 1.2.2012

Репутация: -3
Всего: -4



Перед данной строчкой 
Код

curl_setopt($ch, CURLOPT_POST, 1);


Прописывать команду 
Код

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);


Верно? То есть перед тем как выполним запрос?

Администратор может ли заподозрить, что та неладное с авторизацией? Если отключить ssl...



Это сообщение отредактировал(а) Predator199 - 12.2.2015, 22:54
PM MAIL   Вверх
Sanchezzz
Дата 12.2.2015, 23:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1670
Регистрация: 19.11.2006
Где: Voronezh

Репутация: 41
Всего: 60



вы не отключаете ssl вы только говорите что я нехочу проверять сертификат и я на все согласеня 

Это сообщение отредактировал(а) Sanchezzz - 12.2.2015, 23:48


--------------------
Понравился ответ "+" по репе, не забываем закрывать тему, заказы в LS.
PM MAIL Skype GTalk   Вверх
Predator199
Дата 13.2.2015, 10:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 412
Регистрация: 1.2.2012

Репутация: -3
Всего: -4



Все получилось, спс. smile 
PM MAIL   Вверх
Predator199
Дата 13.2.2015, 19:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 412
Регистрация: 1.2.2012

Репутация: -3
Всего: -4



Скажите пожалуйста, реализация подобного на C++. Возможна и насколько сложнее? В плане кода...
PM MAIL   Вверх
baldina
Дата 13.2.2015, 19:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3433
Регистрация: 5.12.2007
Где: Москва

Репутация: 26
Всего: 101



конечно возможна, libcurl это библиотека С.
не сильно сложнее (на уровне синтаксических различий и встроенных типов)
PM MAIL   Вверх
Predator199
Дата 13.2.2015, 22:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 412
Регистрация: 1.2.2012

Репутация: -3
Всего: -4



Можно пожалуйста статью по данному вопросу. Та, что чайнику бы была понятна...
PM MAIL   Вверх
baldina
Дата 13.2.2015, 22:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3433
Регистрация: 5.12.2007
Где: Москва

Репутация: 26
Всего: 101



http://ru.libcurl.wikia.com/wiki/Libcurlru...%B8%D0%BA%D0%B8

Добавлено через 1 минуту и 45 секунд
но вообще это тема немного сложнее чем для чайников. 
PM MAIL   Вверх
Predator199
Дата 13.2.2015, 22:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 412
Регистрация: 1.2.2012

Репутация: -3
Всего: -4



Я пока устанавливаю по для работы с c++.

На с++ так же нужно, сперва авторизоваться, далее записать куки которые даст сервер в txt. После чего можно подгружать txt и бегать скрипту по сайту?
Сертификат ssl, тоже можно будет игнорировать как и в php?
PM MAIL   Вверх
baldina
Дата 13.2.2015, 22:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3433
Регистрация: 5.12.2007
Где: Москва

Репутация: 26
Всего: 101



на c++, php, java, c#, perl, basic, pascal, ruby и остальных нужно все то же самое. можно даже без curl, в голом http.

PM MAIL   Вверх
Predator199
Дата 13.2.2015, 23:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 412
Регистрация: 1.2.2012

Репутация: -3
Всего: -4



Завтра начну изучать, имеется ли библиотека оналогичной simple_html_dom.php? То есть можно ли без труда разобрать html верстку?

Такой вопрос, что значит в голом http? Мне необходимо авторизоваться, то есть авторизовать скрипт и получить html данные , недоступные неавторизованному пользователю.

В С++, куда сохраняются данные? В php эта база данных мусикл и интерфейс phpmyadmin. 

Это сообщение отредактировал(а) Predator199 - 13.2.2015, 23:12
PM MAIL   Вверх
Predator199
  Дата 14.2.2015, 17:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 412
Регистрация: 1.2.2012

Репутация: -3
Всего: -4



Сайт доступен через протокол HTTPS
Значит читать мне нужно от сюда?
http://ru.libcurl.wikia.com/wiki/Https.c

Код


CURL *curl;
CURLcode res;
 
curl_global_init(CURL_GLOBAL_DEFAULT);
 
curl = curl_easy_init();
if(curl) {
    curl_easy_setopt(curl, CURLOPT_URL, "https://site.com/login/"); - адрес на который будет отослан post запрос?
    curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L);      - Можно ли так же исключить проверку ssl?
    res = curl_easy_perform(curl);


    if(res != CURLE_OK)                                                       -
         fprintf(stderr, "curl_easy_perform() failed: %s\n",      -   Не понятно для чего весь этот код?           
              curl_easy_strerror(res));                                       -  Что тут за проверка?
 
    curl_easy_cleanup(curl);  - завершение сессии
  }

  curl_global_cleanup();  - завершение работы  curl



И так, отправила запрос. Где прописывать логин и пароль, как хранить полученные данные куков?

 
PM MAIL   Вверх
Aliance
Дата 16.2.2015, 09:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 14
Всего: 137



А давайте вопросы по C++  и прочим ЯП мы будем задавать не в треде по PHP, а в их профильных.
PM MAIL WWW ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1448 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.