4

博客折腾记:修复七牛云测试域名失效问题

 3 years ago
source link: https://xiang578.com/post/fix-qiniu-test-url-error.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

博客折腾记:修复七牛云测试域名失效问题

发表于

2018-12-21 更新于 2021-04-12 分类于 站务

阅读次数: 343
本文字数: 1.2k

毕业之后开始工作快要 5 个月了,然后也快有 3 个月没有更新博客。其实文本编辑器中还有很多的草稿,但是一直没有力量驱动自己完结他们,并且分享出来。另外,这一段时间也不是完全没有分享。在这个页面的上方有一个 Tech 的标签,可以连接到我新搭的博客。受限于当前使用的 hexo 主题无法配置 latex 数学公式,所幸新开博客分享算法学习的笔记。大家感兴趣的可以访问一下,不过也没有太多的内容。

这次在博客公告中要告诉大家的确是另外一件事情。屋漏偏风连夜雨,不知道从什么时候开始,七牛云开始图片使用测试域名,毫无疑问这个博客的图片都挂了。自己也一直没有动力修复,让这一段时间访问我博客的小伙伴受累了。

今天研究了一下如何修复这个图床问题。官方有一个帮助页面如何配置域名的 CNAME - 七牛开发者中心,大概就是你的存储空间之前有一个测试域名(比如我的是 7xkpe5.com1.z0.glb.clouddn.com),现在不允许通过测试域名访问图片,需要绑定一个备案过的域名才可以。所以我们需要两个步骤完成改造:首先,给空间绑定一个域名(比如现在使用的是 media.xiang578.com );最后,在域名解析平台添加一个 CNAME,将你指定的域名转发到七牛的记录上。

完成上一步后,图片还是不能正常显示。因为之前的文章中,图片的链接都是以测试域名开头的,比如7xkpe5.com1.z0.glb.clouddn.com/15283589946007.jpg ,现在我们要将它改成 下面的形式 media.xiang578.com/15283589946007.jpg。简单的方法是打开文本编辑软件,然后使用查找替换功能,一个一个文件处理。显然这很无聊,而且进入 source/_posts 目录下利用 grep 7xkpe5 *.md | wc 统计了一个,我大概需要修改的有 142 处。

需要替换的字符串需要替换的字符串

幸运地是 linux 系统下有两大文本处理利器 sedawk。我们使用 sed 可以将一个字符串转换为另外一个字符串。网上搜索了一下用法,很快写了出来

sed -i -r "s/7xkpe5\.com1\.z0\.glb\.clouddn\.com/media\.xiang578\.com/g" *.md

这条命令中原始形态可以表示为 sed 's/原字符串/替换字符串/g'。其中参数 -i 代表替换文件中的所有匹配项,-r 代表批量替换支持扩展表达式。在原字符串和替换字符串中都出现了 \.,应为 .sed 命令中代表匹配任意单个字符,加上转移字符后可以代表它本身。最后 *md 代表对目录下的 md 文件进行处理。

运行完成之后,我们在统计一下测试域名和正式域名的数量,可以发现完美的解决了这个问题,图片又能正常显示。

修改后修改后

所以,写下今天这一篇博客一切都是因为贫穷。如果有钱直接在主机上放置图片,有带宽提供出来访问,也就不会依赖七牛云了……



2019.11.09

为了减少博客依赖服务,参考 图床从七牛云迁移到腾讯COS折腾笔记 | 思想就是武器 将所有的图片全部从七牛上下载,利用 COS 存储。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK