0. 前言
以前网站的域名是 Starxn 的共享二级域名,虽然免费,但是在国内浏览器和微信内已被墙,导致无法访问。考虑到个人 blog 的公开性,在犹豫了一下午后,我下单了 vblg.top 域名,并进行了艰难(并非)的迁移。
1. 购买
我的个人经验是:如果你想要长久运营这个网站,不要看第一年价格!要看续费价格!第一年下单多爽,第二年续费就多惨。我个人推荐 namesilo 的 .top 域名,正常情况下第一年 $1.88,续费 $4.88,折合人民币约 14/35 元

现在大部分国外网站也支持支付宝付款,不需要 visa 卡。
2. DNS服务器转移
为什么选择 Cloudflare?我认为不必多说,请问还有哪个免费的域名托管服务比 Cloudflare 更强呢?
迁移的过程很简单,只需现在 Cloudflare Dashboard 注册域名,根据指示更新 NS 服务器就好了。受困于 Cloudflare Free 的 CDN 在大陆的不可用状态,又得益于 Starxn 虚拟主机优秀的网络环境,我决定不使用 Cloudflare CDN 服务,只进行 CNAME 解析。

(根域名开启代理是为了配置重定向,这个下面会说)
3. 从根域名导向到 WWW 子域
因为从二级域名变为了顶级域名,而根域不支持 CNAME 解析,自然需要将根域名的请求重定向到 WWW 子域。
将根域名开启代理,在 Cloudflare 管理界面中新建重定向规则,选择 根域名转向 WWW 子域名的模板应用即可。
再次使用根域尝试访问网站,自动跳转到 WWW 子域即为成功。
4. DNSSEC
DNSSEC 是一个加密技术,能够防止用户被导向错误的网站,通俗点来讲就是防止被墙后被导向国家反诈中心。在 Cloudflare DNS 设置中点击启用 DNSSEC,将生成的 DS 记录复制到注册商即可。
设置生效大约要几分钟,可使用 DNSVis 检验是否配置成功。



5. 虚拟主机添加域名
很简单的流程,在虚拟主机内部添加 WWW 的域名就好了
6. SSL
由于域名变化了,SSL 证书也需要新申请。
7. WordPress后台
我本以为Wordpress使用的都是相对路径,只需要更新设置中的站点地址就好了。后来浏览文章的时候才发现,上传的图片忽然都无法访问了。需要使用文章编辑的“作为 HTML 编辑” 功能,将图片的 src 改到新域名再保存发布。
更方便的方法
注意:操作数据库前请先备份!!!
可以直接导出 mysql 数据库,使用 Ctrl+F 批量将原域名改为新域名,再上传到 mysql 中
(若有) 更新 OAuth 传回链接
对于配置了 OAuth 的网站(如 Github 登录、微信登录),需要在对应后台更新回传链接才可正常使用。
8. 更新分享链接
如果你在别的地方给别人发过网站链接,别忘了更新。
test