推荐答案
// www.javascriptcn.com code example
server {
listen 443 ssl;
server_name example.com;
ssl_certificate /etc/nginx/ssl/example.com.crt;
ssl_certificate_key /etc/nginx/ssl/example.com.key;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
location / {
root /var/www/html;
index index.html;
}
}本题详细解读
1. 配置 HTTPS 的基本步骤
要使用 ngx_http_ssl_module 配置 HTTPS,首先需要在 Nginx 配置文件中定义一个 server 块,并指定监听 443 端口(HTTPS 默认端口)。然后,通过 ssl_certificate 和 ssl_certificate_key 指令分别指定 SSL 证书和私钥的路径。
2. 配置 SSL 协议和加密套件
为了确保安全性,建议使用较新的 TLS 协议版本(如 TLSv1.2 和 TLSv1.3),并通过 ssl_ciphers 指令配置强加密套件。ssl_prefer_server_ciphers 指令可以确保服务器优先选择加密套件。
3. 示例配置详解
listen 443 ssl;:监听 443 端口并启用 SSL。server_name example.com;:指定服务器名称。ssl_certificate /etc/nginx/ssl/example.com.crt;:指定 SSL 证书路径。ssl_certificate_key /etc/nginx/ssl/example.com.key;:指定 SSL 私钥路径。ssl_protocols TLSv1.2 TLSv1.3;:指定支持的 SSL/TLS 协议版本。ssl_ciphers HIGH:!aNULL:!MD5;:指定加密套件,排除不安全的算法。ssl_prefer_server_ciphers on;:优先使用服务器端的加密套件。location / { ... }:定义请求处理规则,如根目录和默认文件。
4. 注意事项
- 确保 SSL 证书和私钥文件的路径正确,并且文件权限设置合理。
- 定期更新 SSL 证书,避免证书过期导致服务中断。
- 使用
nginx -t命令测试配置文件语法是否正确,然后使用systemctl reload nginx重新加载配置。