URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID8
Нить номер: 6314
[ Назад ]

Исходное сообщение
"SoapClient и сертификаты"

Отправлено Сергей , 29-Апр-09 15:56 
Надо по-быстрому написать маленькое приложение на php, которое получает некую информацию с удалённого сервера. Сервер поставляет её через xml, для доступа к которому предлагается использовать SoapClient.

$wsdl = 'https://некийадрес/sc.asmx?WSDL';
soapClient = new SoapClient($wsdl,array('classmap'=> $map));

проблема в том, что подключение к серверу идёт через https, соответственно там предлагается проверка сертификата, которую браузер предлагает осуществить при помощи дополнительного окошка с инфой о сертификате.
А как заставить php принять сертификат, ведь тут никакого окошка не выскочит :) ? Или хотя бы вообще проигнорировать наличие сертификата?

Подозреваю, что есть какой-нибудь ключ, передаваемый в SoapClient при помощи array, но уже несколько часов поиска ни к чему положительному не привели.


Содержание

Сообщения в этом обсуждении
"SoapClient и сертификаты"
Отправлено angra , 29-Апр-09 16:43 
По идее должно соединится без каких либо проблем. Вы бы хоть попробовали.

"SoapClient и сертификаты"
Отправлено Сергей , 29-Апр-09 16:53 
>По идее должно соединится без каких либо проблем. Вы бы хоть попробовали.

Конечно попробовал :)
В том-то и дело, что ничего не выдаёт, а в логе появляется запись Couldn't load from "путь к указанному выше WSDL".

Пробовал скачать файл curl'ом
Если без параметров, то ругается на сертификат.
Если с ключом -k (не проверять сертификаты), то выдаёт корректный WSDL.


"SoapClient и сертификаты"
Отправлено pro100master , 03-Июн-09 23:16 
>>По идее должно соединится без каких либо проблем. Вы бы хоть попробовали.
>
>Конечно попробовал :)
>В том-то и дело, что ничего не выдаёт, а в логе появляется
>запись Couldn't load from "путь к указанному выше WSDL".
>
>Пробовал скачать файл curl'ом
>Если без параметров, то ругается на сертификат.
>Если с ключом -k (не проверять сертификаты), то выдаёт корректный WSDL.

curl, libxml, openssl, SimpleXML, soap и SPL должны быть установлены и активированы в самом PHP. Скорее всего openssl не установлен или не загружен в PHP.