赞
踩
在实践中配置Nginx以支持HTTPS,涉及以下几个关键步骤:
确保Nginx已安装,并且包含HTTP SSL模块(也称为ngx_http_ssl_module)。通常在编译安装Nginx时,可以通过添加--with-http_ssl_module
选项来启用它。如果你使用的是预编译包,SSL模块可能已经被默认包含。
/etc/nginx/ssl
。打开Nginx的主配置文件(通常是 /etc/nginx/nginx.conf
或者在一个特定的站点配置文件如 /etc/nginx/conf.d/example.com.conf
),然后为需要启用HTTPS的服务器块添加如下配置:
server { listen 443 ssl; server_name yourdomain.com; # 替换为你的域名 # SSL证书配置 ssl_certificate /etc/nginx/ssl/yourdomain_com.crt; # 证书文件路径 ssl_certificate_key /etc/nginx/ssl/yourdomain_com.key; # 私钥文件路径 # 强化SSL设置 ssl_protocols TLSv1.2 TLSv1.3; # 支持的安全协议版本 ssl_prefer_server_ciphers on; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; # 安全的加密套件 ssl_session_cache shared:SSL:1m; ssl_session_timeout 1h; # 其他配置,例如根目录、索引文件等... root /var/www/yourdomain.com/public_html; index index.html index.htm; # ... }
为了强制所有HTTP流量转为HTTPS,可以在另一个server块中设置HTTP监听并将请求重定向到HTTPS:
server {
listen 80;
server_name yourdomain.com;
return 301 https://$host$request_uri; # 发送301永久重定向到HTTPS
}
nginx -t
命令检查配置文件是否有语法错误。systemctl restart nginx
或 service nginx restart
重启Nginx服务以使配置生效。以上即为在Nginx上实现HTTPS的基本步骤。在实际部署过程中,还可能需要根据具体情况进行更多优化配置,例如启用HSTS(HTTP严格传输安全)、OCSP stapling等功能。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。