服务器到期后,我准备这样把博客搬到新服务器

博客刚搭好,我又想到一个问题:现在这台服务器到期以后,如果不续费,换一台服务器,博客和域名怎么办? 总不能每换一次服务器,就重新买一个域名,再让别人更新收藏夹。 所以趁着现在的部署过程还记得,我把以后搬家的步骤也整理了一遍。这篇先作为迁移预案,等真正换服务器时,再补实际操作和遇到的问题。 目前我的博客是 Hugo + PaperMod + Nginx:在 Mac 上写文章、生成网页,上传到服务器,用 https://040012.xyz/ 访问。下面按这套静态博客、域名直接连接服务器的部署方式来考虑。 先把“换服务器”和“换域名”分开 我这里说的“把域名转移到新服务器”,实际操作是修改域名的 DNS 解析,让 040012.xyz 指向新的服务器 IP。 域名本身可以继续用,注册商和 DNS 服务商也可以保持原样。 需要迁移或重建的东西,主要有这些: 内容 换服务器时怎么处理 域名 040012.xyz 保留,修改解析记录 Hugo 源文件 继续保存在 Mac,另外做独立备份 生成的网页 重新生成,上传到新服务器 Nginx 在新服务器安装并配置 HTTPS 证书 在新服务器重新申请,或安全迁移已有证书 续期任务 在新服务器重新检查和验证 因为域名没有变,Hugo 的 baseURL 仍然是: baseURL = 'https://040012.xyz/' 这里不用改成新服务器的 IP。以后上传命令里的服务器地址需要更新,但文章对外使用的网址可以保持不变。 尽量在旧服务器到期前开始 虽然题目写的是“服务器到期后”,真要操作,我会尽量提前几天开始,让新旧服务器有一段重叠时间。 如果旧服务器还在,新机器出问题时,至少还有地方可以回退。等新站稳定了,再处理旧机器,会从容很多。 如果已经到期,我会先看云控制台里的实例和磁盘还在不在、有没有快照或恢复入口。具体能否恢复,要看当时的资源状态和平台规则,不能默认过期的数据一定还在。 对现在这个博客来说,只要 Mac 上完整的 my-blog 文件夹还在,就可以重新生成网页,在新机器上重建网站。 但这也让我意识到,源文件不能只放在一台电脑上。真正开始积累文章以后,需要备份的不只是 Markdown,还包括图片、hugo.toml、头像、主题和自己写的模板、样式。 服务器上的网页是生成结果,域名只是访问入口,它们都不能代替完整的源文件备份。 先准备新机器,暂时保留原来的解析 新服务器准备好后,我会先安装 Nginx,开放安全组入方向的 TCP 80 和 443 端口。 ...

2026-10-20 · 2 分钟 · ZhaoYJ

用 Hugo 搭了一个自己的博客,顺手把部署过程记下来

这两天把自己的博客搭起来了,地址是 040012.xyz。 一开始的想法很简单:找个自己的地方,放学习笔记、项目复盘,还有一些平时折腾东西留下的记录。文章可以慢慢写,先把地方准备好。 最后选的是 Hugo + PaperMod + Nginx,在 Mac 上写文章、生成网页,再上传到 Ubuntu 服务器。域名和 HTTPS 也一起配好了。 过程不算复杂,但从“服务器本机能访问”到“别人打开域名也能访问”,中间还是踩了几个坑。趁着还记得,记录一下。 为什么最后选了 Hugo 我最先考虑的其实是服务器资源。 选型时,我是按 2 核、2 GB 内存的小服务器来考虑的,还想在上面部署自己的 Java 语音购物项目。如果博客再常驻一个后端、再加数据库,后面几个服务一起跑,内存就会比较紧。 这里也只是部署前的判断。我还没有做过博客和 Java 项目同时运行的负载测试,不能因为博客现在能打开,就说整台服务器能稳定承载多少人。 当时主要看了几种方案: 方案 我当时的考虑 WordPress 有网页后台,扩展也多,但我暂时只想写文章,不需要那么多功能 Halo 后台管理方便,但还要再运行一个 Java 服务,对当前服务器来说需要考虑内存余量 Typecho 如果一定要浏览器后台写文章,我会优先考虑它,PHP 加 SQLite 的组合也比较轻 Hexo 同样可以生成静态网页,主题选择丰富,也是合适的方案 Hugo 静态部署,PaperMod 的样子又刚好符合我想要的简洁风格,最后就选了它 我喜欢 Hugo 的地方是,生成完之后就是一堆 HTML、CSS 和 JavaScript 文件。服务器用 Nginx 把这些文件提供出去就行,不需要一直运行 Hugo,也不用为了博客单独维护数据库。 当然,这也有取舍。Hugo 没有自带一个让我登录进去发文章、拖拽装修页面的后台。文章要在电脑上写,发布时再生成和上传。常用设置改配置文件,更深的页面调整需要接触 CSS 和模板。 目前我主要想记录技术内容,这个写作方式可以接受。文章也能用 Typora 这类编辑器来写,不需要一直对着纯文本。 这套博客是怎么运行的 我一开始还把“服务器上部署 Hugo”和“服务器上一直运行 Hugo”混在了一起。实际用起来,分工很清楚: Mac 上写 Markdown ↓ Hugo 生成 public 文件夹 ↓ 上传到服务器 /var/www/html/ ↓ Nginx 提供网页,浏览器通过域名访问 本地的 hugo server 只是方便预览。正式网站已经上传到服务器,所以本地终端关掉、电脑关机,都不会让线上博客停止运行。 ...

2026-10-20 · 2 分钟 · ZhaoYJ