测试Nginx转发配置是否正确,其实可以分三步走,既简单又高效:
nginx -t 命令检查配置文件语法有没有错误。
curl -I http://localhost 或浏览器访问,看请求头和响应内容是否符合预期。
systemctl status nginx 确认Nginx服务已经正常启动。
如果配置了SSL,记得额外检查证书是否有效。整个过程下来,你就能确保转发功能万无一失啦。
以下是 Nginx SSL 配置的检查清单,帮助你验证配置是否正确且安全:
前置检查与语法验证
sudo systemctl status nginx
/etc/nginx/nginx.conf 或 /etc/nginx/conf.d/)
sudo nginx -t
sudo nginx -t -c /path/to/nginx.conf
SSL 模块与版本检查
--with-http_ssl_module 模块。
证书与密钥配置
ssl_certificate 和 ssl_certificate_key 指令指向的文件路径是否正确。
.crt)和私钥文件(如 .key)存在且 Nginx 进程有读取权限。
fullchain.pem(服务器证书在前,中间证书在后)。
SSL 配置项检查
server 块中包含 listen 443 ssl;(或 IPv6 的 listen [::]:443 ssl;)。
ssl_protocols TLSv1.2 TLSv1.3;。
ssl_ciphers HIGH:!aNULL:!MD5;。
ssl_prefer_server_ciphers on;。
ssl_session_cache shared:SSL:10m; 和 ssl_session_timeout 10m;。
ssl_stapling on; 和 ssl_stapling_verify on;。
防火墙与 SELinux/AppArmor
sudo ufw allow 443/tcp。
功能测试
curl 命令测试 HTTPS 连接:curl -I https://yourdomain.com。
openssl 命令测试 SSL 握手:openssl s_client -connect yourdomain.com:443 -servername yourdomain.com。
tail -f /var/log/nginx/error.log 以定位问题。
安全优化
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;。
在线验证
通过以上清单逐一检查,可以确保 Nginx 的 SSL 配置正确、安全且有效。