soap — PHP SoapClient — & gt; __call () возвращает «Не удалось подключиться к хосту»

Недавно я изменил свою среду разработки с Windows 10 на Ubuntu 16.04 (виртуальный в vmware player). С тех пор у меня возникли проблемы с вызовами PHP SoapClient. Следующий скрипт хорошо работал под Windows 10 (XAMPP) и также работает на моем онлайн-сервере (Plesk-Onyx под Ubuntu), но не на виртуальной машине.

<?
ini_set ('soap.wsdl_cache_enabled', 0);
ini_set ('soap.wsdl_cache_ttl', 0);

$wsdl_file = 'soap/stage.wsdl';
$soap_param = array (
'location'              => 'https://.../Service.asmx',
'local_cert'            => 'soap/stage.pem',
'login'                 => 'USERNAME',
'password'              => 'PASSWORD',
'soap_version'          => SOAP_1_2,
'exceptions'            => True,
'trace'                 => 1,
'connection_timeout'    => 15
);

try {
$soap_client = new SoapClient ($wsdl_file, $soap_param);
$soap_client -> __call ('SOME_FUNCTION', array ()); //failing
} catch (Exception $e) {
echo $e -> getMessage ().'<br>';
}
?>

Линия $soap_client -> __call ('SOME_FUNCTION', array ()); выдает сообщение об ошибке: Could not connect to host

Я пробовал разные исправления, которые нашел в интернете, но ничего не получалось.
SELinux и брандмауэры на гостевой и хост-машине отключены. Что мне не хватает? Заранее спасибо.

ОБНОВИТЬ:

Я до сих пор не нашел решение. Но проверяя отправленный запрос (используя $soap_client -> __getLastRequest () а также $soap_client -> __getLastRequestHeaders ()) представляется, что в заголовке запроса отсутствуют следующие данные:

Host: SERVICE_HOST
Connection: Keep-Alive
User-Agent: PHP-SOAP/7.1.1
Content-Type: application/soap+xml; charset=utf-8; action="URL/SOME_FUNCTION"Content-Length: 208
Authorization: Basic BASE64_STRING

Кто-нибудь может подтвердить, что это может быть проблемой?

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]