2023年,我换了新域名「牡丹」
立泉七年,这个博客的域名一直是apqx.me
,从GoDaddy
购买,每年续费168元就可以一直拥有它,而且因为域名的唯一性,它也早已成为我在互联网中独一无二的身份ID
,很多信息都和它有关。
apqx
当然不是随机的无意义字符,其实是我小时候喜欢的长弓·阿帕奇
武装直升机的拼音缩写apq
,至于后面的x
,是因为当我决定要注册人生第一个域名apq.me
的时候意外发现它竟然已经属于别人(明明几个月前还是未注册状态),只能遗憾的在后面加一个x
,变成apqx.me
。
对非开发者,需要补充一些关于域名是什么的简单解释。服务器是现代互联网的基础设施,网站搭建在服务器上,在网络世界里,只能通过IP
地址去定位到一台特定的服务器,使用HTTP
协议可以在浏览器中输入一串类似http://185.199.109.153:80
的数字来访问搭建在IP
地址为185.199.109.153
的服务器上监听80
端口的网站,全是数字很难记对吧,所以才有了域名的概念。
域名可以由字符、数字甚至汉字来组成,有意义的词自然比无规则的数字清晰简洁,比如都熟悉的百度,它的域名是baidu.com
,在浏览器中输入就能跳转到百度的网站。这个过程中浏览器其实做了2件事,先去DNS
域名服务器查询这个域名对应的IP
地址,再去访问这个IP
对应的服务器,当然中间会有很多复杂的细节需要更多协议来处理,但简单来说,域名起到的就是这个作用。
由常用词组成的优质域名一直都是不菲的资源,像opera.com
这种在域名出现的时候就会被抢注,后来者想要拥有只能高价从原主人那里购买。除最常见的.com
之外,近些年也开放了诸如.io
、.xyz
、.me
、.love
等很多新的顶级域名,尤其.me
非常适合做个人博客,而且相比.com
、.cn
也比较容易捡到“好词”。
牡丹
「牡丹」是一个对我而言十分特殊的词,源于昆曲《牡丹亭》对我的影响,所以真的很幸运,在我之前竟然没有人注册过mudan.me
。这个域名相比于抽象中二的apqx.me
更有纪念意义,纪念我的整个前青春时代,纪念我从北方到南方的迁徙,纪念我的世界从灰暗向多彩的渐变。
如此,更换域名势在必行,有2个问题需要解决:
- 旧域名重定向
- 搜索引擎重新收录
因为apqx.me
真的使用太久了,过去分享出去的链接都是这个域名,我当然希望这些链接在更换域名后依然能跳转到正确页面而不至于直接失效。解决方式有2种,旧域名通过DNS
的CNAME
直接指向新域名,或者用HTTP
访问旧域名时插入一次301
重定向到新域名。
博客托管在GitHub Pages
上,仓库根目录下有一个CNAME
文件标明这个网站的域名。配置过自定义域名应该知道,交给它托管的所有网站域名的DNS
都指向同一个入口服务器,Pages
会在这里检测目标域名,并与它记录的已知域名对比,从而定位到要访问的网站。这种机制下,如果DNS
添加一条CNAME
记录,把apqx.me
指向mudan.me
,相当于把apqx.me
指向了GitHub Pages
的那台入口服务器。服务器检测到目标域名是apqx.me
,而在Pages
所有仓库的CNAME
文件中找不到名为apqx.me
的域名,会直接返回404
页面,所以这种方式在这种情况下是不可行的。
只剩下另一种方案,但是GitHub Pages
并不支持针对HTTP
协议进行配置,所以并不能对请求直接返回301
重定向。一个思路是在Pages
上为apqx.me
创建一个空白跳转网站,用JavaScript
把来访URL
手动跳转到mudan.me
。这…倒不是不可以,只是有点“糙”。
车到山前必有路,我使用的是Cloudflare
的DNS
服务,众所周知Cloudflare
的本职是CDN
内容分发网络,只需把DNS
解析的Proxy status
设置为Proxied
就可以使用它的CDN
服务。访问apqx.me
的流量会先经过Cloudflare
再到达托管网站的GitHub Pages
,此时Cloudflare
作为中间人是能够对经过它的HTTP
请求返回301
重定向的。
请忽略我在A记录
里随意填写的8.8.8.8
,因为会配置重定向,HTTP
请求永远也不会到达这个IP
,所以可以任意填
中间人操作需要在Rules
中定义。
将settings
设为Forwarding URL
,status code
为301
重定向,这样所有类似于apqx.me/path1/path2
的请求都会被重定向到mudan.me/path1/path2
。
旧域名重定向到新域名,搜索引擎在抓取网页时也能看到301
跳转从而收录新域名,但我觉得还是手动向搜索引擎提交一下mudan.me
比较好,等URL
全部被收录后就可以放心从搜索引擎中删除旧域名了。
apqx.me
我会保留一年作为缓冲,之前在微博等地方分享出去的链接会尽可能修改为新域名链接,无论是直接编辑微博还是添加一条提示域名变更的评论。一年后,旧域名不再续费,它不再属于我,重定向也会随之失效,再见了👋。