为什么必须 HTTPS
2026 年,HTTP 站点:浏览器警告、SEO 降权、Service Worker 不可用、密码不让填、某些 API 直接拒绝。装 HTTPS 是 5 分钟的事,没理由不装。
Certbot 一键
Ubuntu:
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d wadely.com -d www.wadely.com
它会:
- 验证你确实拥有这个域名(自动放一个文件让 LE 去访问)
- 申请证书
- 自动改 Nginx 配置加上 SSL 块
- 加 80 → 443 重定向
完成后浏览器访问 https://wadely.com 就有锁图标了。
验证证书
curl -I https://wadely.com
# 看 HTTP/2 200 + valid cert
或浏览器点锁图标看证书有效期。
自动续签
Let's Encrypt 证书 90 天到期——certbot 装好后自动加了 cron / systemd timer,默认每天试图续签,到期前 30 天自动换。
验证定时任务在跑:
sudo systemctl list-timers | grep certbot
sudo certbot renew --dry-run # 演练一遍
多域名 / 通配符证书
多域名:-d a.com -d b.com -d c.com 一次性申。
通配符(*.wadely.com)需要 DNS 验证:
sudo certbot certonly --manual --preferred-challenges dns \
-d "*.wadely.com" -d wadely.com
它会让你加 TXT 记录验证——做完后 nginx 配置自己改。
中级:HSTS
让浏览器强制走 HTTPS:
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
⚠ 加了之后即使你之后想退回 HTTP 也得等浏览器缓存过期(最长 1 年)——确认你的站点全 HTTPS 没问题再加。
国内 ICP / 备案后用
阿里云 / 腾讯云的域名也可以用 Let's Encrypt——但他们家也提供免费证书(1 年有效期,每年手动重新申请),有人觉得管理更方便。
配置评分
申完证书可以去 SSL Labs 测一下——A 级以下需要调整 cipher suite,A+ 需要加 HSTS。
下一篇:让你的应用进程在后台稳定跑。