Попытка установить связь Мыла с https://источник WSDL через PHP/Win32, но продолжать получать ошибку:
Предупреждение: SoapClient:: SoapClient () [soapclient.soapclient]: ввод-вывод, предупреждающий: не удалось загрузить внешний объект "https://...
Если я пытаюсь сохранить WSDL локально и получить доступ к нему затем, SoapFault->faultstring
свойство имеет сообщение "поддержка SSL, не доступно в этой сборке".
После некоторого поиска с помощью Google, кажется, что SOAP PHP не может соединиться с источником HTTPS. HTTP в порядке, все же.
Существует ли обходное решение для этого? Или существует ли альтернативная версия/модуль SOAP, которую я могу установить?
У меня была такая же проблема. openSSL, cURL были включены, инициировал SoapClient с опцией местоположения для хранения сертификатов и т. д., и т. д. все перепробовал.
Оказывается, он работает в режиме CLI. Таким образом, php_sapi = CLI.Поскольку мы почти всегда запускаем вызовы наших веб-сервисов как задание cron, запланированное задание в Windows, это не так уж и плохо. Я был очень рад, что все заработало!
Обновление: Хорошо, оказывается, когда PHP работает как модуль Apache, он использует необходимые для openll библиотеки libeay32.dll и ssleay32.dll из установки Apache. При использовании PHP в CLI используются библиотеки из каталога PHP / install. Перезапись двух dll Apache на библиотеки из каталога PHP дала результат. Теперь он также работает под управлением Apache. Таким образом, ваша версия PHP должна совпадать с рабочими dll для конкретной версии. Когда он по-прежнему не работает в веб-интерфейсе. Пожалуйста, убедитесь, что Apache не загружает эти dll из системного каталога Windows, указанного ранее в вашем системном пути, который выбирается Apache.