Nginx 安装 HTTPS 后怎么验收
证书文件、域名匹配、防火墙和公网访问,逐项检查才算完成。
适用环境:Ubuntu / Debian 风格的 Nginx;需有服务器管理权限
先检查证书本身
openssl x509 -in /etc/nginx/ssl/site/fullchain.pem -noout -subject -issuer -dates -ext subjectAltName路径需要换成你的证书。查看有效期以及 subjectAltName 中是否包含实际访问的域名;根域名 example.com 和 www.example.com 是两个名字。fullchain 文件通常应按服务器证书在前、中间证书在后的顺序包含证书链。
配置证书和私钥
server {
listen 443 ssl;
server_name example.com www.example.com;
ssl_certificate /etc/nginx/ssl/site/fullchain.pem;
ssl_certificate_key /etc/nginx/ssl/site/private.key;
ssl_protocols TLSv1.2 TLSv1.3;
root /var/www/site;
index index.html;
}这是示例 server 配置,域名、路径和站点目录都要替换。私钥仅供服务读取,不能放进网站公开目录;安装时应保留现有配置备份。证书、私钥不匹配或文件不存在,会在配置检查时报错。
先检查,再重新加载
sudo nginx -t
sudo systemctl reload nginx
sudo ss -lntp只有 nginx -t 成功后才执行重新加载。查看是否监听 TCP 443,并核对云平台防火墙及系统防火墙。服务进程监听成功,不代表公网已经放通。
绕过本机 DNS 做域名校验
curl --resolve www.example.com:443:127.0.0.1 -I https://www.example.com/该命令在服务器本机把连接定向到 127.0.0.1,但保留网址中的域名,仍然校验证书是否可信且匹配。它适合检查站点配置,不能代替外部网络测试。之后从另一条网络正常访问 HTTPS 域名,检查证书和响应状态。
跳转与续期单独验收
如果启用 HTTP 跳转,再用 curl -I http://你的域名/ 查看 Location 是否指向正确的 HTTPS 地址。不要只看到 301 就忽略错误域名或循环跳转。最后记录到期时间和续期方式;手工安装的证书不会因为 Nginx 正在运行就自动更新。本站曾实际完成证书安装、443 放行及两个域名的访问验证,这也是本文选择这些检查项的原因。