免费的东西最贵
国庆期间,收到七牛的测试域名回收邮件,没细看也没怎么在意,因为我仅仅只是拿七牛的对象存储作为我博客的图床而已,但这两天发现我博客中的图片地址全部失效了,进入到七牛的管理后台,在对应的bucket
中图片已经不能预览和下载了。
既然七牛不能再用,就要想办法换地方了,一时没找到合适的图床,那就还是将图片放在自己的站点中吧。思路如下:
- 将存储在七牛中的图片下载到本地;
- 上传图片到我自己博客站点中;
- 批量替换博客中的图片地址。
下载存储在七牛的图片
因为七牛已过期的存储空间oec2003
中的图片已经不能预览和下载,所以需要新建一个新的存储空间来做中转,如下图,我创建了一个oec2003bak
的存储空间:
将原存储空间oec2003
的图片迁移到新的oec2003bak
中需要用到七牛的qshell工具,可以在https://developer.qiniu.com/kodo/tools/1302/qshell进行下载。
在命令行进入到下载解压到qshell目录中,依次执行下面的命令:
1 | ln -s qshell-darwin-x64 qshell |
AK和SK的查找方式如下图:
命令执行完成后,等待几分钟,去看新建的存储空间,会发现图片已经全部迁移过来了,新的域名有一个月的有效期,所以这些图片在一个月内是有效的。
在qshell目录中创建配置文件download_file.conf
,文件内容如下:
1 | { |
在命令行中进入到qshell目录中,执行下面命令进行文件下载:
1 | ./qshell qdownload download_file.conf |
上传图片到我自己博客站点中
这个步骤因人而异,我博客系统使用的是hexo,我的做法很简单,在发布目录public下的img中创建post目录,将所有下载的图片文件拷贝到post目录中。
下面就等待图片地址替换后一起将内容和图片push到服务器。
批量替换图片地址
图片拷贝完成后,接下来就要做批量替换链接了,老的地址如下:
新的地址如下:
在命令行进入到hexo
的source/_posts
目录,执行下面命令进行批量替换:
1 | sed -i -e 's#(http://oec2003.qiniudn.com#(http://fwhyy.com/img/post#g' /Users/ican_macbookpro/Documents/fengwei/hblog/source/_posts/*.md |
替换完成后,在hexo的目录下执行下面命令发布博客内容:
1 | hexo g |