最近碰上了一个问题,七牛云开始回收测试域名,结果导致我的图床有些失灵、一些软件资源都无法下载。其实这个问题在前一段不蒜子统计修改的博客里已经有兆头了。不过当时没注意。最后还是被逼得只能购买了域名,各类备案,重新搭建图床。
1 域名购买及备案
在阿里云上购买域名备案就不具体说明了。详情参加下面的网址。
阿里云的域名备案推荐用阿里云手机app进行,现在已经不需要幕布,比原来简化了很多流程。
当然如果其他平台购买域名也是可以的。国外域名其实都不需要备案的,不过七牛云图床搭建要求主站域名必须备案,反正是比较麻烦。
2 hexo博客自定义域名绑定
hexo博客本身就支持自定义域名的绑定。其实只需要将原来github仓库上的域名转接到新的域名上即可。首先是在hexo博客的source文件夹增加一个CNAME的文件,写入你的域名。接着在域名控制台设置解析DNS。
设置如下三个,一个CNAME,两个指向IPV4地址的,其实给的是github的IP。
这样设置完毕后,原来的网站即转接到新网址。
3 ICP备案与网安备案
ICP备案其实是阿里云那边已经帮忙提交了。阿里云一般一天时间帮你审核完毕,即自动提交工信部ICP备案,这个比较好解决。网安备案要求有服务器。花的时间比较长(尤其选交互式网站的话)。我这边是不小心选了交互式网站。但是建议可以选非交互式的,选www服务之类的。个人静态网站影响不大。网安备案交互式的需要填多个申请表。
4 七牛云图床搭建
这个其实就是在测试域名过期的七牛云对象存储服务上绑定新的自定义域名。填一个二级域名。即在你的域名(假定为xxxx.com)面前增加一个比如cdn.xxxx.com或者qn.xxxx.com都是可以的,这个随你的喜欢。创建完成后,就会有一个CNAME的域名。复制之后。到域名控制台解析DNS增加新的记录。
马赛克部分是你的自定义二级域名。
这样子图床就重新构建完成了,只需要在对应的地方做些配置修改即可。
5 批量替换博客的图片外链地址
事实上这样子博客图片外链地址全是旧的,很有可能后面图片都会失效,一个一个改实在费时费力。所以思考了下如何进行批量替换,最后想到了最简单的方式就是用Python写一个简单的代码。
import os
#Hexo blog
basepath = '你的markdown文件放置文件夹'
blogfiles = os.listdir(basepath)
for i in range(0, len(blogfiles), 1):
blogfilesuse = blogfiles[i]
blogfilespath = basepath + '/' + blogfilesuse
blogfile = open(blogfilespath)
blogf = blogfile.read()
blogf = blogf.replace('测试域名1', '新子域名1')
blogf = blogf.replace('测试域名2', '新子域名2')
blogf = blogf.replace('测试域名3', '新子域名3')
blogf = blogf.replace('原二级域名', '新域名')
outputpath = '输出路径'
outfile = outputpath + str(blogfiles[i])
outf = open(outfile, 'w+')
outf.write(blogf)
outf.close()
blogfile.close()
这样一瞬间就搞定了,至于其他平台的博客(修改域名前的这些博客外链可能就懒得修复了)只能说声抱歉了,如果你们想看博客的话,欢迎看自己搭建的这个博客。
6 将备案信息添加到网页底部
最后一步是将备案信息添加到网页底部。此处只针对NexT主题,其他主题也是类似。只需要找到NexT主题文件夹下的themesnextlayout_partials下的footer.swig。在endif前面加入以下的代码。
<div class="BbeiAn-info">
{{ __('XICP备')}} -
<a target="_blank" href="http://www.miitbeian.gov.cn/">你的ICP备案号</a>
</a>|
<a target="_blank" href="http://www.beian.gov.cn/portal/registerSystemInfo?recordcode=你的网安备案号" style="color:#f0d784;text-decoration:none;padding-left:30px;background:url(将图标传到图床上附上外链) no-repeat left center" rel="nofollow">{{ __('X公网安备 备案号') }}</a>
</div>
最后感谢下一些参考的博客,并附上链接。
参考博客: