把静态站迁到自建 VPS 的完整过程
博客原先挂在托管平台上,为了能自己控制缓存和证书,我把它迁到一台自建 VPS。做法是:用 Caddy 反代静态目录并自动签发 Let's Encrypt 证书,用 rsync 从本地推送构建产物,systemd 单元保证 Caddy 开机自启,再用 cron 每天做一次增量备份。遇到的坑主要有三个:一是 DNS 切换后旧解析残留,导致证书签发校验失败,靠提前降低 TTL 并等待 TTL 过期解决;二是 rsync 默认权限导致静态文件不可读,加 --chmod 修正;三是防火墙只放行 80/443,忘了放行 SSH,差点把自己锁在外面。结论是自建部署可控性明显提升,但要把证书、备份、防火墙三件事当成日常运维项,不能一次配置完就不管。
博客原先挂在托管平台上,为了能自己控制缓存和证书,我把它迁到一台自建 VPS。做法是:用 Caddy 反代静态目录并自动签发 Let's Encrypt 证书,用 rsync 从本地推送构建产物,systemd 单元保证 Caddy 开机自启,再用 cron 每天做一次增量备份。遇到的坑主要有三个:一是 DNS 切换后旧解析残留,导致证书签发校验失败,靠提前降低 TTL 并等待 TTL 过期解决;二是 rsync 默认权限导致静态文件不可读,加 --chmod 修正;三是防火墙只放行 80/443,忘了放行 SSH,差点把自己锁在外面。结论是自建部署可控性明显提升,但要把证书、备份、防火墙三件事当成日常运维项,不能一次配置完就不管。