запросы по https через curl

Sashakold

Guest
запросы по https через curl

С такой проблемой столкнулся.
Вот мой скрипт:

<?
$url = "https://www.domain.ru/";
$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_FAILONERROR, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_TIMEOUT, 3);
$result = curl_exec($ch);
curl_close($ch);
echo $result;
?>

Так во проблема такая - когда в сертификате, который предлагает сервер поле "кому выдан" совпадает с названием узла, то всё работает нормально, а вот когда не совпадает - то ничего не работает,

Что делать, как решить проблемы?
 

tony2001

TeaM PHPClub
>Так во проблема такая - когда в сертификате, который предлагает сервер поле
>"кому выдан" совпадает с названием узла, то всё работает нормально, а вот когда
>не совпадает - то ничего не работает.
было бы странно, если б было иначе - в том и смысл SSL, что у каждого - свой сертификат.
 

Sashakold

Guest
Блин, ну если адрес сервера и строка кому выдан различаются, то всё равно можно зайти на этот сайт и посмотреть, что там написано, просто приняв этот сертификат, хоть названия и не совпадают. Так что не надо из меня дурачка делать, хорошо?
Лучше по делу что-нить напишите
 

sakon

П..и.н..ок
CURLOPT_SSL_VERIFYPEER: Установите этот параметр в ноль, чтобы запретить проверку сертификата удаленного сервера (начиная с curl 7.10, по умолчанию этот параметр имеет значение TRUE). Дополнительные сертификаты можно задать с помощью параметра CURLOPT_CAINFO (добавленного в in curl 7.9.8). Можно также указать путь к файлам сертификатов в параметре CURLOPT_CAPATH. Если CURLOPT_SSL_VERIFYPEER установлен в 0, возможно, также потребуется установить CURLOPT_SSL_VERIFYHOST в 1 или 0 (по умолчанию 2).


CURLOPT_SSL_VERIFYHOST: Задает проверку имени, указанного в сертификате удаленного сервера, при установлении SSL соединения. Значение 1 означает проверку существования имени, значение 2 - кроме того, и проверку соответствия имени хоста.
Источник : php.net
 

Sashakold

Guest
Поставил CURLOPT_SSL_VERIFYPEER и CURLOPT_SSL_VERIFYHOST равными 0.
Но проблема осталась :(
 

sakon

П..и.н..ок
Посмотри постом повыше. Или ты на ссылки которые тебе дают, ты не обращаешь внимание?
hint: там написано "Источник"

Значит плохо читал. А там есть очень полезные строки:
При возникновении проблем в использовании cURL необходимо добавить следующие строки перед вызовом curl_close для получения отчета о последнем выполненном запросе:

<?php
print_r(curl_getinfo($ch));
echo "\n\ncURL error number:" .curl_errno($ch);
echo "\n\ncURL error:" . curl_error($ch);
// ...close cURL handle ($ch) below
?>
 
Сверху