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+ssi (на одном сервере работает/на другом нет)

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Curl+ssi (на одном сервере работает/на другом нет)
kuzmit4
Отправлено: 02 Августа, 2017 - 14:51:29
Post Id


Новичок


Покинул форум
Сообщений всего: 31
Дата рег-ции: Март 2015  


Помог: 0 раз(а)




Добрый день. Использую Curl для загрузки файла.
На хостинге работает нормально, на домашнем сервере не работает (никаких ошибок не выдает).
На домашнем сервере - если качаем по http:// - то все работает нормально, не работает только по https://
Куда копать, почему не работает ?
Помогите пожалуйста, очень долго вожусь с этой проблемой.
PHP:
скопировать код в буфер обмена
  1. function get_data($url) {
  2.     $agent= 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.0.3705; .NET CLR 1.1.4322)';
  3.     $ch = curl_init();
  4.     $timeout = 5;
  5.     curl_setopt($ch, CURLOPT_URL, $url);
  6.     curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  7.     curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
  8.     curl_setopt($ch, CURLOPT_USERAGENT, $agent);
  9. //    // говорят должно помогать при неработающем ssl (включал на домашнем сервере, мне не помогло)
  10. //    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
  11. //    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
  12.     $data = curl_exec($ch);
  13.     curl_close($ch);
  14.     return $data;
  15. }
  16. $returned_content = get_data('https://site.ru/test.zip');
  17.  


Работает apache 2.2
Скрин настроек PHP 5.4
 
 Top
Sail
Отправлено: 04 Августа, 2017 - 08:28:32
Post Id



Участник


Покинул форум
Сообщений всего: 1131
Дата рег-ции: Февр. 2014  


Помог: 57 раз(а)




kuzmit4,
Мне, например, помогло:
CURLOPT_SSL_VERIFYPEER либо false, либо true (0, 1)
Если true, то
CURLOPT_SSL_VERIFYHOST, 2
CURLOPT_CAPATH, путь до файла с сертификатом
Файл с сертификатом можно либо запросить у техподдрежки, либо взять из браузера... экспортировав правильным методом Улыбка
Подробнее про значения констант: function[dot]curl-setopt.php
 
 Top
LIME
Отправлено: 04 Августа, 2017 - 11:36:13
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




ясно понятно
погугли что есть самоподписанные лицензии https ssl
и погугли как перенаправлять в конфиге веб-сервера
и пойми что ssl работает не по 80 порту а по 443
а еще локально оно тебе не надо
пусть и дальше работает по http
80 port
(Добавление)
Sail ну нафига ты его путаешь?
видишь не шарит
со временем поймет
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB