Я хочу подключиться к серверу Soap, но у меня есть ошибка:
SOAP-ERROR: Parsing Schema: can't import schema from 'http://domain.com:80/services.xsd
Я посмотрел на другие вопросы, и у меня есть мой «allow_url_open» для ON, я использую SOAP_1_1, и OpenSSL включен. Что-то странно, URL-адрес моего SOAP-сервера:
https://domain.com/services?WSDL
И в ошибке больше нет «https», а только «http» на порту 80. Я пробовал:
wget https://domain.com/services?WSDL
И это работает. У меня есть файл XML со всеми моими услугами. Но, используя PHP и:
try { $client = new SoapClient('https://domain.com/services?wsdl', array( "trace" => 1, "soap_version" => SOAP_1_1 )); } catch (SoapFault $e) { var_dump($e); }
У меня есть ошибка «Анализ схемы: не могу импортировать схему». Нужно ли мне настраивать что-то еще на моем PHP? Я использую Nginx и PHP-FPM 5. Спасибо.
http://domain.com:80/services.xsd
Вы можете получить доступ к вышеуказанной ссылке в своем браузере?
Нет, я думаю. Аналогично, он также недоступен через ваш код. Это расположение схемы должно быть определено в вашем wsdl, т. Е.
https://domain.com/services?WSDL
Вы можете добавить эти элементы из схемы в wsdl. Вы можете следовать этому подходу, чтобы избавиться от него.
http://weblogs.thinktecture.com/cweyer/2007/05/improving-wcf-interoperability-flattening-your-wsdl.html