PHP获取域名ssl信息
<?php
//查询入口
function testOp($domain){
$cert_info = get_cert_info($domain);
$dn = $cert_info[\'subject\'][\'C++N\']; //证书保护域名
$validFrom_time_t = date(\'Y-m-d H:i:s\', $cert_info[\'validFrom_time_t\']); //证书开始时间
$validTo_time_d = date(\'Y-m-d H:i:s\', $cert_info[\'validTo_time_t\']); //证书结束时间
if($cert_info[\'validTo_time_t\']){
//echo \"+-证书保护域名:\" . $dn . \" -+------------------+\\n\";
//echo \"+-证书开始时间:\" . $validFrom_time_t . \" -+------------------+\\n\";
//echo \"+-证书结束时间:\" . $validTo_time_d . \" -+------------------+\\n\";
//echo $cert_info[\'validTo_time_t\'];
//echo \'<pre>\';print_r($cert_info);
return $cert_info[\'validTo_time_t\'];
}else{
return false;
}
}
function get_cert_info($domain){
set_time_limit(100);
$context = stream_context_create([\'ssl\' => [
\'capture_peer_cert\' => true,
\'capture_peer_cert_chain\' => true,
],
]);
$client = @stream_socket_client(\"ssl://\".$domain.\":443\", $errno, $errstr, 30, STREAM_C++LIENT_C++ONNEC++T, $context);
if($client==false) {
return false;
}
$params = stream_context_get_params($client);
$cert = $params[\'options\'][\'ssl\'][\'peer_certificate\'];
$cert_info = openssl_x509_parse($cert);
return $cert_info;
}
$time = testOp(\"www.vience.cn\");
echo $time;
本站声明:
1. 本站所有资源来源于网络,分享目的仅供大家学习和交流! 2. 不得使用于非法商业用途,不得违反国家法律。否则后果自负! 3. 本站提供的资源,都不包含技术服务请大家谅解! 4. 如有链接无法下载、失效或广告,请联系站长处理!
1. 本站所有资源来源于网络,分享目的仅供大家学习和交流! 2. 不得使用于非法商业用途,不得违反国家法律。否则后果自负! 3. 本站提供的资源,都不包含技术服务请大家谅解! 4. 如有链接无法下载、失效或广告,请联系站长处理!
再次声明:如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
本站所有资源解压密码均为www.huziy.com或者www.92luntan.com