HTTPS 与 SSL 证书
HTTPS 可以为网站提供加密传输,防止数据被窃取或篡改。Nginx 支持多种 SSL 证书配置方式。
一、生成自签名证书
openssl req -new -newkey rsa:2048 -days 365 -nodes -x509 \
-keyout /etc/nginx/ssl/nginx.key \
-out /etc/nginx/ssl/nginx.crt
`
- nginx.key:私钥
- nginx.crt:证书文件
生产环境建议使用受信任的 CA 证书,如 Let’s Encrypt。
二、Nginx HTTPS 配置示例
server {
listen 443 ssl;
server_name example.com;
ssl_certificate /etc/nginx/ssl/nginx.crt;
ssl_certificate_key /etc/nginx/ssl/nginx.key;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
root /var/www/html;
index index.html index.php;
location / {
try_files $uri $uri/ =404;
}
location ~ \.php$ {
include fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}
三、HTTP 跳转到 HTTPS
server {
listen 80;
server_name example.com;
return 301 https://$host$request_uri;
}
- 301:永久重定向,保证用户访问 HTTPS
- 可结合 HSTS 强制浏览器仅使用 HTTPS
四、安全优化建议
- 禁用不安全协议(如 SSLv2/SSLv3、TLS1.0)
- 使用强加密套件
- 定期更新证书,避免过期
- 开启 HSTS 和 OCSP Stapling,提高安全性与性能
通过配置 HTTPS 与 SSL 证书,Nginx 可以为网站提供安全加密传输,保障用户数据和访问安全。
相关内容
- 备份与恢复 本节介绍 Nginx 配置备份与恢复方法,包括配置文件备份、日志备份、快速恢复和灾难恢复策略,保障服务安全可靠。
- 常用命令与服务管理 本节介绍常用的 nginx 命令与服务管理方法,包括启动、停止、重载、日志查看、配置检测等操作,帮助你熟练掌握 nginx 文档中的服务运维要点。
- Nginx 教程:目录结构与配置文件详解 本节 Nginx 教程详细介绍 nginx 目录结构与配置文件组成,帮助你掌握 nginx.conf、sites-enabled、logs 等常见路径及配置含义...
- Nginx 与 Docker 集成 本节介绍 Nginx 与 Docker 的集成方法,包括 Nginx 容器部署、配置卷挂载、端口映射和与后端服务协作,实现容器化高可用 Web 服务。
- FastCGI 工作原理 本节讲解 Nginx 与 FastCGI 的工作原理,包括请求转发、PHP-FPM 处理流程及数据交互方式,帮助你理解 nginx.conf 中动态内容处理机制...
- FastCGI 参数详解 本节详细讲解 Nginx 与 FastCGI 配合时的参数配置,包括 fastcgi_param 指令、标准参数与自定义参数,帮助你精确控制 PHP-FPM 请...