Я просто хотел отправить запрос Soap на сервер мыла, используя SHA2
а также TLS1.2
но это показывает ниже ошибку при попытке создать мыльный клиент
ошибка
SOAP-ERROR: парсинг WSDL: не удалось загрузить из ‘https://example.com/wsdl‘: не удалось загрузить внешнюю сущность «https://example.com/wsdl«
Код
$url = 'https://example.com/wsdl';
$client = new SoapClient(
$url,
array(
'ssl_method' => SOAP_SSL_METHOD_TLS,
'cache_wsdl' => WSDL_CACHE_NONE,
'stream_context'=> stream_context_create(
array(
'ssl'=> array(
'crypto_method' => STREAM_CRYPTO_METHOD_TLSv1_2_CLIENT,
'ciphers' => 'SHA2',
'verify_peer'=>false,
'verify_peer_name'=>false,
'allow_self_signed' => true //can fiddle with this one.
)
)
)
)
);
Решили, добавив SHA256
в ciphars
, На самом деле SHA2 имеет 4 вида хэш-функций: SHA224
, SHA256
, SHA384
а также SHA512
,
изменения
'ciphers' => 'SHA256',
Отвечать на собственный вопрос немного странно для меня, но это может помочь другим разработчикам.
У вас нет сертификата для размещения в массиве ssl?
'cafile' => $certFile