Змінюй хід війни! Допомагай ЗСУ!

PHP. Curl не работает с https

🟠 21:01 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
Статус: Offline
Реєстрація: 02.07.2009
Повідом.: 200
  • 🟠 21:01 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #1
PHP. Curl не работает с https

Привет, народ!

В общем, ситуация такая: понадобилось мне написать скрипт, который отображает на сайте список твитов. Как известно, у Twitter доступ только по OAuth, так что нужно на PHP писать такой себе "шлюз", который авторизуется у Twitter по HTTPS, забирает список твитов и отдаёт их в ajax-запросе, собственно, самой странице, на которой этот список нужно разместить.

Для всего этого используется PHP-библиотека twitteroath:
⚠ Тільки зареєстровані користувачі бачать весь контент та не бачать рекламу.


Проблема заключается в том, что после выполнения curl_exec в скрипте twitteroauth сервер на моём хостинге сбрасывает соединение, и всё... В браузере - "Соединение было сброшено. Во время загрузки страницы соединение с сервером было сброшено", и никакой возможности перехватить ошибки curl.

Залил я эти скрипты на другой свой сайт (размещён в другом аккаунте у того же провайдера), и - о чудо! - всё заработало!

Обнаружил, что с обычным http Curl везде хорошо работает, а https на первом хостинге не прохавывается.

Посмотрел php_info() обоих хостингов - версия PHP одинаковая, 5.2.17, версии OpenSSL тоже - "OpenSSL 1.0.0-fips 29 Mar 2010". А вот версии библиотеки Curl несколько отличаются.
На первом: "libcurl/7.19.7 NSS/3.14.0.0 zlib/1.2.3 libidn/1.18 libssh2/1.4.2"
На втором: "libcurl/7.24.0 OpenSSL/1.0.0 zlib/1.2.3 libidn/1.18".

В общем, даже не знаю, с чего на первом хостинге такая фигня. Никто, случаем, не знает ничего по этому поводу?

Заранее спасибо.
 
  • 🟠 21:01 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #2
обратитесь в техподдержку хостинга, возможно там curl собран без поддержки ssl



⚠ Тільки зареєстровані користувачі бачать весь контент та не бачать рекламу.
 
Останнє редагування:
  • 🟠 21:01 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #3
обратитесь в техподдержку хостинга, возможно там curl собран без поддержки ssl



⚠ Тільки зареєстровані користувачі бачать весь контент та не бачать рекламу.

Да вроде бы Curl с поддержкой SSL. curl_version() выдаёт:
"ssl_version_number" => int(0)
"ssl_version" => string(10) "NSS/3.15.3".

В техподдержку обращался - там предложили перейти на новый тарифный план и, соответственно, перенести сайты на новый сервер с новым ПО. Это всё, конечно, замечательно, но, по идее, у хостера и на старом сервере Curl с SSL должны были работать, просто не хотят заморачиваться.

По поводу ситуации - более чем уверен, что запрос curl_exec, обращающийся к NSS, приводит к segmentation fault'у и падению нити Апача, чем и вызван резкий сброс соединения. Пошерстил интернет и нашёл упоминания, что такое случается. Жаль, ведь теперь совершенно ясно, что проблема либо в сборке Curl, либо в NSS. Просто не очень хочется заморачиваться переносом сайтов.

В любом случае, спасибо за советы :).
 
Назад
Зверху Знизу