nginx手动配置ssl详细说明以及案例
2025-03-10
7
Nginx手动配置SSL详细说明及案例
1. 获取SSL证书
首先需要从证书颁发机构(CA)获取SSL证书,通常包括:
证书文件(如
your_domain.crt
)私钥文件(如
your_domain.key
)可能还包括中间证书文件(如
intermediate.crt
)
2. 上传证书文件
将证书文件和私钥文件上传到Nginx服务器,通常放在 /etc/nginx/ssl/
目录下。
3. 配置Nginx
编辑Nginx配置文件,通常在 /etc/nginx/nginx.conf
或 /etc/nginx/sites-available/default
。
4. 修改配置文件
在 server
块中添加或修改以下内容:
server { listen 443 ssl; server_name your_domain.com; ssl_certificate /etc/nginx/ssl/your_domain.crt; ssl_certificate_key /etc/nginx/ssl/your_domain.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 index.htm; } } server { listen 80; server_name your_domain.com; return 301 https://$host$request_uri; }
5. 解释配置
listen 443 ssl;
:监听443端口并启用SSL。ssl_certificate
:指定证书文件路径。ssl_certificate_key
:指定私钥文件路径。ssl_protocols
:指定使用的SSL/TLS协议版本。ssl_ciphers
:指定加密套件。ssl_prefer_server_ciphers
:优先使用服务器端的加密套件。return 301 https://$host$request_uri;
:将HTTP请求重定向到HTTPS。
6. 重启Nginx
保存配置文件后,重启Nginx以应用更改:
sudo systemctl restart nginx
7. 验证配置
访问 https://your_domain.com
,确认SSL证书已正确配置。
案例
假设域名为 example.com
,证书文件为 example.com.crt
,私钥文件为 example.com.key
,配置如下:
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 index.htm; } } server { listen 80; server_name example.com; return 301 https://$host$request_uri; }
重启Nginx后,访问 https://example.com
验证配置。
本篇文章内容来源于:nginx手动配置ssl详细说明以及案例
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。