关于七牛云测试域名过期如何下载图片资源

大家都知道,七牛云的测试域名是只有30天的有效时间,那如果在过期之前没有将里面的图片、文件资源下载保存下载,在过期之后是没办法访问了的,也没办法下载,所以该如何解决这个问题呢?其实也很简单: 先说结论:有两种办法: 第一种办法是:

  • 重新创建一个测试bucket(会分配一个新的测试域名)
  • batchcopy 原bucket到新的bucket
  • qdownload 新bucket

第二种办法是:用一个已经ICP备案的域名绑定到测试域名

第二种办法很简单,我们主要是讲第一种办法:

  1. 首先在七牛云控制台新建空间 使用浏览器进入七牛云控制台,在对象存储中新建一个存储空间,此存储空间需要与失效的存储空间在同一个【存储区域】上(比如都在华南,不在同一存储区域无法拷贝)。
  2. 接下来需要到七牛云官方的工具:http://devtools.qiniu.com/qshell-v2.3.5.ziphttp://devtools.qiniu.com/qshell-v2.2.0.zip (注意版本是2.2.0跟2.3.5命令上会有些许差异)将qshell工具下载下来并解压,然后在该文件夹下shift+右键,然后点击powershell工具,之后都需要在该工具上操作。命令格式:
bash
复制代码
# CMD 命令格式 qshell.exe 命令 参数 # Git Bash 等类 Linux 终端命令格式 ./qshell.exe 命令 参数

首先设置权限:

bash
复制代码
# qshell-2.3.5 版本命令 ./qshell.exe account <AccessKey> <SecretKey> <Name> # qshell-2.2.0 版本命令 ./qshell.exe account <AccessKey> <SecretKey>

Name是用户可以任意取的名字,表示当前在本地记录的账户的名称,和在七牛注册的邮箱信息没有关系。 到七牛云上将你的AK跟SK复制下来并粘贴到对应的位置(注意版本的命令区别)

  1. 接下来我们需要将测试域名以失效的存储空间的文件全部下载下来: 第一步、获取失效之前所有文件的文件名称跟所在位置: 使用 listbucket 导出文件列表 参考官方网址:https://github.com/qiniu/qshell/blob/master/docs/listbucket.md 假设失效存储空间名为:bucketOld 假设新建存储空间名为:bucketNew
bash
复制代码
# qshell-2.3.5 版本命令 ./qshell.exe listbucket bucketOld -o list.txt # qshell-2.2.0 版本命令 ./qshell.exe listbucket bucketOld list.txt

执行完这个命令之后你就会得到以下list.txt:

txt
复制代码
article/f9664d0bd47bbb502c14c2420246a340.png 11706 FuvcYD6QQw1TcANknPFCmi86OJCD 17186775691431600 image/png 0 0 article/fa3e3231dfcb012343f84d0b02d508a3.png 40538 FldsQD454DL5xLQkvtOaHBsCPylm 17186776491948051 image/png 0 0 avatar/9018b3dc44f1e2da12dfde378753cb94.png 48490 FpvbPzSchDW9mA3lmqNxkQymLtCj 17184355046082066 image/png 0 0 avatar/9f3b876e75f7a774e721345075f2c276.png 62916 FkZnnuoRjhE2svzozWLKmdViStyv 17217070727051088 image/png 0 0 avatar/be866f1db235cdbda21233a726febcd6.png 76881 FsdKu_ZBBhuqHBqgPX0eP37iQnse 17167098700699907 image/png 0 0 avatar/f3119cdd91f133db2dd0de3f6bfb239a.png 69552 Fuly-xMo6HSjkot7C-JvQ3S1Cd5b 17185281870586719 image/png 0 0 b52b69ebc94dc7d678a5b326123123123123.png 1266967 FsizXr4T1brNMWvty68TK99axGJq 17210260019895521 image/png 0 0 config/5169640109761800878d8045dcaadc50.jpg 144630 FhkG5MscidUTwRCKC-2B2vmcR05x 17167106799891168 image/jpeg 0 0 config/b52b69ebc94dc7d678a5b326ee8a084c.jpg 201844 FhOF8VMxCa-DW91Zx7Mweo8u7ZOV 17167107050184185 image/jpeg 0 0 pic/ 0 Fto5o-5ea0sNMlW_75VgGJCv2AcJ 17167053968790631 application/qiniu-object-manager 0 0 pic/backgroundPicture.jpg 2028369 FqzbMRbJfDZbtpWSAmdMnJT6Df4O 17167054250151036 image/jpeg 0 0 pic/bg.png 308607 FhRXnQmj6Kzqu5ALEzlhRWCv3mjS 17167054245920843 image/png 0 0

然后我们需要手动删除多余的数据,只留下文件名, 如:

txt
复制代码
article/0a1dd363cd6b816bbb0353a290938b26.png article/5b0b5cd27e95df8b1a1d8731783936cf.png article/667280f7a7f5d9f182e6bbf634733dc2.png b52b69ebc94dc7d678a5b326123123123123.png config/5169640109761800878d8045dcaadc50.jpg config/6208a2e291c4473af7f97647b7c99739.png config/7b854aaec8f70f85e27a887aec971a93.jpg config/8685fce4857fc55031513ecf4e54218e.jpg config/b52b69ebc94dc7d678a5b326ee8a084c.jpg pic/ pic/backgroundPicture.jpg pic/bg.png

然后保存文件 接下来就可以通过命令将旧文件复制到新文件上去了:

bash
复制代码
# qshell-2.3.5 版本命令 ./qshell.exe batchcopy --force --overwrite bucketOld bucketNew -i list.txt # qshell-2.2.0 版本命令 ./qshell.exe batchcopy --force --overwrite bucketOld bucketNew list.txt

之后你就会在你新建的测试存储空间看到这些已经存在的文件了,然后就可以通过qdownload将其下载下来(qdownload无需下载):参考官方网址:https://github.com/qiniu/qshell/blob/master/docs/qdownload.md

bash
复制代码
# qshell-2.2.0 与 qshell-2.3.5 版本命令相同 ./qshell.exe qdownload download.conf

download.conf文件的内容如下:

json
复制代码
{ "dest_dir" : "D:\\img\\", "bucket" : "bucketNew", "cdn_domain" : "xxxxxx.bkt.clouddn.com" }
参数名描述
dest_dir本地数据备份路径,为全路径,并且文件夹需要事先创建好,不然无法下载
bucket空间名称
cdn_domain设置下载的CDN域名,此处为新建空间的测试域名。

备注:

在Windows系统下面使用的时候,注意dest_dir的设置遵循D:\\aaa\\bbb这种方式。也就是路径里面的要有两个(\)。 在默认不指定cdn_domain的情况下,会从存储源站下载资源,这部分下载产生的流量会生成存储源站下载流量的计费,请注意,这部分计费不在七牛CDN免费10G流量覆盖范围。 特别注意,在执行命令的时候不一定是qshell.exe,有可能是qshell-windows-x64.exe。

0个评论
点击登录,快来和大家讨论吧~
表情
图片
暂无评论
下载 APP