-
在服务端使用 Openssl 工具进行查看
由于我服务端是搭建在 Centos 上,所以用 xshell 或者 putty 工具登录后,进入证书目录,使用 openssl 命令进行查看:
# cd /usr/ssl/cert
# openssl x509 -in signed.crt -noout -dates
上面改成你自己证书的所在目录,证书名称也改成你自己服务端上证书的名称。
-
使用 php 代码方法进行查看
如果你有多个可访问的域名,那么使用代码的方法进行查看就会容易很多,省得一个一个手动查看。下面贴上代码:
/** * 获取证书有效期 */ public function getValidity(){ $domain = "sslforfree.com"; $context = stream_context_create(array("ssl" => array("capture_peer_cert_chain" => true))); $socket = stream_socket_client("ssl://$domain:443", $errno, $errstr, 30, STREAM_CLIENT_CONNECT, $context); $context = stream_context_get_params($socket); foreach ($context["options"]["ssl"]["peer_certificate_chain"] as $value) { //使用openssl扩展解析证书,这里使用x509证书验证函数 $cerInfo = openssl_x509_parse($value); if(strpos($cerInfo['name'],$domain)) { echo "start:".date("Y-m-d",$cerInfo['validFrom_time_t'])."<br/>"; echo "end:".date("Y-m-d",$cerInfo['validTo_time_t']); } } }