Как избежать "Сертификат пира CN=`...'не соответствует ожидаемому CN"

Я перешел с PHP 5.4 на 5.6 в моей производственной системе (работающей на провайдере виртуального хостинга). Мои запросы определенного веб-сайта теперь получают ошибку "stream_socket_client(): сертификат равноправного участника CN='(отредактирован).com' не соответствует ожидаемому CN='(отредактировано).com.au'"

Владелец сайта говорит, что он использует один сертификат Let's Encrypt для покрытия нескольких доменов.

Моя промежуточная система (работающая на NAS-устройстве Synology) также работает под управлением PHP 5.6 и не получает эту ошибку.

Я использую HTTP_Request2 и пытаюсь отключить проверку, а именно:

   $query = new HTTP_Request2($url, HTTP_Request2::METHOD_GET,
      array('connect_timeout' => 2, 'timeout' => 4));
   $query->setConfig(array(
      'ssl_verify_peer'   => FALSE,
      'ssl_verify_host'   => FALSE,     
   ));

и все же я все еще получаю ошибку в производственной системе.

Безопасность не критична в этом приложении. Я предпочел бы, чтобы мой код переносил сертификат сайта, чем просить сайт изменить свои сертификаты (что они могут отказать).

Как я могу сделать эту работу?

Спасибо,

боб

0 ответов

Другие вопросы по тегам