为博客配置 HTTPS(使用 Nginx 和手动替换证书)
1. 申请免费的 SSL 证书
首先,我通过 阿里云的数字证书管理服务 获得了免费的 SSL 证书。获得的证书文件有三个主要文件:
sangui.top.key
:私钥文件。sangui.top_chain.crt
:证书链文件。sangui.top_public.crt
:公钥证书。
将这三个文件下载并保存在本地,准备上传到服务器。
2. 配置 Nginx 支持 HTTPS
为了使我的网站支持 HTTPS,我需要配置 Nginx 以使用这些证书。
修改 Nginx 配置文件 在
/etc/nginx/nginx.conf
或/etc/nginx/conf.d/default.conf
文件中,我确保有一个针对 HTTPS 的server
块:server {
listen 443 ssl;
server_name www.sangui.top sangui.top;
# 证书和私钥文件路径
ssl_certificate /etc/nginx/ssl/sangui.top_public.crt;
ssl_certificate_key /etc/nginx/ssl/sangui.top.key;
ssl_trusted_certificate /etc/nginx/ssl/sangui.top_chain.crt;
# 一些SSL优化设置
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers 'ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES128-GCM-SHA256';
ssl_prefer_server_ciphers on;
# 网站的根目录配置
# root /usr/local/tomcat9/webapps/ROOT/;
# 确保代理请求到 Tomcat
location / {
proxy_pass http://127.0.0.1:8080; # 将请求代理到 Tomcat
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
# 错误页面配置
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}确保配置文件正确 Nginx 配置好后,我使用以下命令检查配置文件是否存在错误:
sudo nginx -t
如果没有错误,我就可以重新加载 Nginx 配置:
sudo systemctl reload nginx
3. 替换证书文件
接下来,我将手动替换服务器上的证书文件。首先,备份原有的证书文件,以防万一:
sudo cp /etc/nginx/ssl/sangui.top_public.crt /etc/nginx/ssl/sangui.top_public.crt.bak
sudo cp /etc/nginx/ssl/sangui.top_chain.crt /etc/nginx/ssl/sangui.top_chain.crt.bak
sudo cp /etc/nginx/ssl/sangui.top.key /etc/nginx/ssl/sangui.top.key.bak
然后,将新获得的证书文件上传到服务器的 /etc/nginx/ssl/
目录,并替换原来的证书文件:
sudo cp /path/to/new/sangui.top_public.crt /etc/nginx/ssl/sangui.top_public.crt
sudo cp /path/to/new/sangui.top_chain.crt /etc/nginx/ssl/sangui.top_chain.crt
sudo cp /path/to/new/sangui.top.key /etc/nginx/ssl/sangui.top.key
4. 测试和验证
替换证书文件后,我访问了 https://www.sangui.top
,并点击浏览器的锁形图标来查看证书信息,确保新的证书已经生效。
我还通过以下命令验证证书是否已经更新:
openssl s_client -connect sangui.top:443
5. 证书续期
由于证书有效期为 90 天,证书到期后需要进行续期。每次申请新证书时,我会替换服务器上的旧证书文件,并确保 Nginx 配置指向新的证书文件。
6. 总结
- 微信
- 赶快加我聊天吧
- 赶快加我聊天吧