使用自建图床,配上自定义的域名,可以减少迁移成本。腾讯云官方给了一个详细的教程,本文在此基础上改进而来。

创建存储桶

访问腾讯云对象存储页面,进入左侧「存储桶列表」菜单,点击「创建存储桶」。

在弹出的菜单中,注意勾选「公有读私有写」,其他任意。

绑定自定义域名

点击进入刚刚创建了存储桶,选择左侧「域名传输与管理」菜单,下面绑定自己的域名。开始之前,请确认绑定的域名已经备案。

下拉到「自定义 CDN 加速域名」[1],点击添加域名,区域选择「中国境内」,类型选择「默认源站」,回源鉴权不开启。添加完成后,后面会出现 CNAME ,将此 CNAME 添加到 DNS 中去。

设置自定义域名 HTTPS

首先需要为刚才自定义的域名申请 SSL 证书。如果有证书,可以在 SSL 控制台上传。如果没有,则可以申请免费证书:

上传证书完毕后,接下来的操作需要在 CDN 控制台完成。选择内容分发网络中的「域名管理」,点击进入刚才绑定的域名管理界面,选择「HTTPS 配置」。

耐心等待一些时间配置完成,就可以使用自定义域名访问图片了。

配置防盗链

为了防止恶意刷流量,我们还需要为自定义域名或者存储桶配置防盗链。防盗链可以在 CDN 控制台配置,也可以在存储桶控制台配置。CDN 的防盗链先执行,存储桶后执行。

以存储桶防盗链设置为例,在存储桶管理菜单中选择「安全管理」 - 「防盗链设置」。在 Referer 上勾选白名单,输入框中选择图床供给的域名,支持通配符。注意,*.example.com不能代表example.com,如果使用二级域名,则需要单独添加一条。

「允许空 Referer」指是否允许不从网页引用,例如浏览器输入图片网址直接访问,或者本地程序访问。如果勾选拒绝,则本地程序无法读取图片,在浏览器中输入图片网址会返回 403。

创建子帐号

完成这些步骤后,就能通过网页上传图片得到地址。但是为了使用 PicGo 等工具,还需要配置 API 密钥。这里选择创建子账户,只授予 COS 相关权限,以保证资源安全。

进入用户控制台,选择「新建用户」- 「自定义创建」。

在后面的菜单中依次选择:「可访问资源并接受信息」- 「编程访问」,如果提醒身份验证,使用微信或者手机验证即可。

设置用户权限中,勾选[2]QcloudCOSDataReadOnly(对象存储COS数据只读的访问权限)和QcloudCOSDataWriteOnly(对象存储COS数据只写的访问权限)两项。

完成后,会得到命为「SecretKey」和「SecretId」 API 密钥一对。记录下来,以后会用到。

配置 Picgo

我使用的是 Picgo core,命令行用起来比较自由一些。其他图床工具配置都大同小异。需要用户输入的信息主要有:

"tcyun" {
	"secretId": "这里填「配置子用户」得到的 SecretId",
	"secretKey": "这里填「配置子用户」得到的 SecretKey",
	"bucket": "这里填存储桶的名称",
	"appId": "这里填主账户 APP ID,获得方式见下图",
	"area": "这里填区域代码,可以在存储桶概览中看到",
	"path": "这里填上传图片的地址",
	"customUrl": "这里填自定义域名,否则会使用默认分配的域名",
	"version": "v5"
}

存储桶概览中可以获得 bucket、area 等信息:

主账户 ID 在账户的个人信息中可以看到:

计费事项

在上述步骤中,主要涉及两个计费项:

  • COS 存储
  • CDN 内容分发

个人使用的情况下,无论是带宽和流量都非常低,费用比较便宜。如果担心的话,或许可以尝试下资源包,100 G流量 1 年也只需要 20 块。



  1. 这里还有「自定义源站域名」选项,也可以自定义域名。但是无法设置 https 访问,会被浏览器识别为不安全。 ↩︎

  2. 策略可以搜索。找不到可以使用关键词cos搜索 ↩︎