Нужно проверить, есть ли на сайте ssl сертификат или нет, если да, то какова дата окончания срока действия сертификата с использованием php-скриптов - PullRequest
2 голосов
/ 19 января 2011

Мне нужно проверить с помощью php-скриптов, чтобы данный веб-сайт содержал ssl-сертификат или нет, если он содержит то, что является датой истечения срока действия сертификата.

Есть ли способ получить эту информацию для любого веб-сайта, используя сценарии php?

Если да, то plzzz, дайте мне знать.Я столько раз пробовал на гугле, но ничего не нашел.

Спасибо.

1 Ответ

9 голосов
/ 20 января 2011

Да, вы должны иметь возможность получать информацию о сертификате с помощью функции stream_socket_client, встроенной в PHP.

Этот конкретный метод работает хорошо, потому что на самом деле он не делает HTTP-запрос, поэтому вам не нужно делать fopen.

$get = stream_context_create(array("ssl" => array("capture_peer_cert" => TRUE)));
$read = stream_socket_client("ssl://www.google.com:443", $errno, $errstr, 30, STREAM_CLIENT_CONNECT, $get);
$cert = stream_context_get_params($read);
var_dump($cert["options"]["ssl"]["peer_certificate"]);

Затем потребуетсяиспользуйте OpenSSL для обработки информации о сертификате на этом этапе.Вы можете прочитать об OpenSSL в руководстве по PHP .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...