图床从七牛迁移至腾讯COS
前言(吐槽):
之前收到邮件,七牛要回收什么测试域名,想着没啥影响。因为我绑定了备案域名。最近突然发现博客好多图片挂了。一看我备案了快五年的域名被取消备案了???而且七牛直接把测试域名删了…
我当初注册的就是个人性质博客类网站,五年时间网站一直正常运行,且内容性质从未改变。空壳网站?备案信息不准确?真是睿智 🖕
概览
以下操作在 macOS 下进行。所有命令的文档请参考qshell 命令列表
主要流程: 下载七牛中的所有资源,上传至腾讯 COS。由于七牛的测试域名已失效,原空间的资源无法直接下载,所以先新建一个空间(新空间测试域名 30 天有效期),将旧空间的资源全部转移至新空间,然后从新空间下载所有资源。
一、七牛资源从就空间转移至新空间
1、下载七牛的命令行工具qshell
2、解压、重命名、赋予 qshell 运行权限
前往目录
1 | cd /Users/ludis/Downloads/qshell-v2.3.4 && ll |
1 | ➜ qshell-v2.3.4 ll |
重命名(可选)
1 | mv qshell_darwin_x64 qshell |
设置权限
1 | chmod +x qshell |
3、添加七牛账号
前往七牛 -> 个人中心 -> 密钥管理。查看 AK、SK。
./qshell account [AK] [SK] [账户名(邮箱即可)]
4、导出已过期的 bucket 空间所有文件信息。
qshell listbucket A -o A.list.txt
(A 为空间名)
5、新建一个空间 B,用于将已过期的 A 空间中的所有文件,转移至新的空间 B。(新空间的域名 30 天有效)注意 A、B 空间需要在相同的地区才可以。
6、使用awk
工具,将 A 空间的文件列表进行格式化。Mac 下自带awk
工具,其余平台自行安装。
此时 A.list.txt 中的内容格式如下:
1 | ... |
使用awk
命令格式化
1 | touch list.txt |
这个命令意思是将A.list.txt
文件中每行的第一个字段(文件名)分离出来,输出到list.txt
文件中。
对应的list.txt
格式如下:
1 | ... |
7、使用命令将 A 空间中的所有资源批量转移至新空间 B 中:
1 | ➜ qshell-v2.3.4 ./qshell batchcopy A B -i list.txt |
根据提示输入字符串即可,次数刷新 B 空间即可看到,所有 A 空间的内容已经转移到 B 空间。
二、从七牛批量下载资源
1、创建下载用的配置文件batch_download.conf
1 | { |
2、下载文件
执行./qshell qdownload -c 10 batch_download.conf
。其中-c 10
表示可以同时下载 10 个文件。
1 | ➜ qshell-v2.3.4 ./qshell qdownload -c 10 batch_download.conf |
三、上传文件至腾讯 COS
此处省略 100 字,自行注册腾讯云,创建存储空间。设置空间权限为“公有读私有写”。
上传资源可以使用网页端或者下载工具。
四、旧资源链接替换/重定向
将资源上传至腾讯 COS 后,需要将原博客中失效的七牛链接替换为腾讯 COS 中的链接。不同系统的博客请自行传泽替换方案。替换.md 文件中的域名,或从数据库查询替换…
五、图片处理(水印)
七牛空间存储的图片,可以创建图片处理规则,添加水印、缩放等比较方便。然而在腾讯 COS 存储中没有找到相关配置项。
搜索发现,腾讯的图片处理,统一使用“数据万象”这个单独的应用。在 COS 创建完存储空间;然后在“数据万象”创建自定义的图片处理规则,并绑定 COS 存储空间的 Bucket 即可。且有个优点是可以使用别名代替处理规则,以及可以使用-(中划线) _(下划线) /(斜杠) !(感叹号)
四中分割符号。
例如:
图片链接:
https://233.com/666.png
如创建的图片规则为:
imageMogr2/interlace/0|watermark/1/image/aHR0cDovL3dhdGVybWFyay1iai0xMjUyMTA2MjExLnBpY2JqLm15cWNsb3VkLmNvbS9sdWRpcy0...
别名为:
imgRule
以七牛的尿性图片添加完规则变成: https://233.com/666.png?imageMogr2/interlace/0|watermark/1/image/aHR0cDovL3dhdGVybWFyay1iai0xMjUyMTA2MjExLnBpY2JqLm15cWNsb3VkLmNvbS9sdWRpcy0...
👎
腾讯云则很优雅: https://233.com/666.png!imgRule
👏
图床从七牛迁移至腾讯COS