现代浏览器对 HTTP 站点标记"不安全",对备案和用户体验都不友好。给静态博客开启 HTTPS 成本极低——用免费证书即可。

申请免费证书

以主流免费证书工具为例,一条命令即可为域名申请并自动校验:

certbot --nginx -d xirangzhe.com -d www.xirangzhe.com

它会自动修改 Nginx 配置、签发证书并配置 80→443 跳转,无需手工改太多。

强制 HTTPS 跳转

若手动配置,在 80 端口的 server 块里加一条重定向:

server {
    listen 80;
    server_name xirangzhe.com www.xirangzhe.com;
    return 301 https://$host$request_uri;
}

避免混合内容告警

开启 HTTPS 后,页面里所有资源也必须走 HTTPS,否则浏览器会报"混合内容"并拦截。注意:

  • 外链图片/脚本用 https:// 而非 http://
  • 本站样式与脚本均为同域相对路径,天然无此问题。

自动续期

免费证书有效期较短,配置定时任务自动续期:

0 3 * * * certbot renew --quiet
提醒:证书过期会导致站点被浏览器拦截并提示"不安全",比没HTTPS更糟——续期一定要自动化。