Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Curl+https: не работает с некоторыми ресурсами
Покинул форум
Сообщений всего: 3
Дата рег-ции: Июнь 2014
Помог: 0 раз(а)
Привет, народ!
В общем, ситуация такая: понадобилось мне написать скрипт, который отображает на сайте список твитов. Как известно, у Twitter доступ только по OAuth, так что нужно на PHP писать такой себе "шлюз", который авторизуется у Twitter по HTTPS, забирает список твитов и отдаёт их в ajax-запросе, собственно, самой странице, на которой этот список нужно разместить.
Проблема заключается в том, что после выполнения curl_exec в скрипте twitteroauth сервер на моём хостинге сбрасывает соединение, и всё... тишина, никакого тебе перехвата ошибок curl, ничего.
Залил я эти скрипты на другой свой сайт (размещён в другом аккаунте у того же провайдера), и - о чудо! - всё заработало!
Нашёл я два простеньких скрипта для тестирования работы Curl с HTTPS:
Так вот, оказалось, что второй скрипт (который обращается к Яндексу) стабильно работает на обоих сайтах, а вот первый скрипт работает только на втором (как, собственно и twitteroath). Т.е. совершенно очевидно, что проблема с работой Curl и HTTPS.
Пожалуйста, подскажите, что может быть не то с первым хостингом? Или что я неправильно делаю?
Заранее, ОГРОМНЕЙШЕЕ СПАСИБО за помощь!
P.S.: Сранивал php_info() - версия PHP одна и та же, версия OpenSSL тоже. А вот версии Curl отличаются.
На первом хостинге:
Добавил, но, к сожалению, всё то же самое - сервер на первом хостинге сбрасывает соединение, а на втором всё замечательно.
Вообще, по идее, если у Curl проблемы с сертификатом, он просто должен возвратить ошибку и продолжить выполнения PHP-скрипта.
Самое интересное, что данные о запросе клиентом данного php-скрипта вообще не заносятся в логи Апача, как будто и не было никаких запросов к нему. Ведь если случается какая-то фигня на стороне сервера при выполнении curl_exec, Апач должен добавить в логи хотя бы строчку о попытке доступа к странице и результате с каким-нибудь кодом из серии 5xx.
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.