cloudflare代理云图片
自定义云图片的域名,使用cf作为代理服务器,代理云图片,使用cf的ssl访问图片 这里讲解如何配置
说明
!!!!重要:Fecify-3.0版本之后,进行了升级,强烈建议使用自动化的方式配置cloudflare:【最佳实践】-CloudFlare-【最佳实践】
重要:本文是通过手动的方式,在cloudflare进行配置,麻烦且容易出错。
准备
使用cf代理云图片,也就是通过cf作为代理服务器,代理阿里云的图片,走的是cf的图片缓存,可以省下来图片的流量费(阿里云oss)。
1.首先关于网站如何配置cf,参看:cloudflare配置CDN+SSL+代理
2.在阿里云插件中,您先把基础的设置好,详细参看:Fecify 云图片存储
cf添加站点
首先,您需要将您的域名,添加到cloudflare站点。(如果您的域名已经作为店铺域名进行了配置,那么在cloudflare站点列表下面可以看到,则不需要重复添加站点了)
您有2种方式,自定义阿里云的域名,选择一种即可,cname的解析方式比较简单(备注:对于其他的一些云存储,譬如:七牛云,没有永久的对外开放的域名,因此无法使用cname解析方式)
方式一: cname解析方式
通过将域名,通过cname的方式解析到阿里云oss的域名的方式。
您可以使用cdn子域名作为图片域名,譬如: cnd.fecshop.cn
1.得到阿里云的Bucket域名,如下图
2.进入cf官网,添加记录
- 类型:CNAME
- 名称:填写您的子域名名称,譬如我填写的是cdn
- 目标:就是云图片目前可以访问的域名,对于阿里云,就是Bucket域名,譬如:
fecmall-xxx.oss-cn-shenzhen.aliyuncs.com
(如果您在阿里云或者七牛云添加了自定义域名,那么这里就填写您的自定义域名即可)
补充:
- 这个实质,就是一个域名级别的代理,cf的一个好处就是自动ssl,这样可以免除您自己添加https的麻烦。
- 您的目标域名(原来的图片访问地址),可以是http,也可以https,都可以的。
方式二:TXT域名解析方式
注意:如果您使用了上面的 阿里云oss cname解析方式, 那么本部分就不需要配置了
本部分,是添加一个自定义域名通过txt的方式解析到阿里云,不是cname的方式解析,步骤稍微麻烦一些。
1.进入阿里云oss,点击这里,绑定域名
2.填写域名,提交(注意,这里的域名要和上面CF的域名一致)
您的域名DNS服务器已经指向了cloudflare,因此不是阿里云的域名,如下图,获取域名解析的信息
进入cf站点,然后在DNS管理中添加,如图:
3.oss这里绑定域名成功后,就可以了。由于域名解析需要一段时间,因此您可能要等一下。
说明:(重要!)
1.如果只有CF做了设置,阿里云这里没有绑定域名,或者绑定域名不成功,那么就会报错
<Error>
<Code>AccessDenied</Code>
<Message>The bucket you access does not belong to you.</Message>
<RequestId>6396FC2012A71A36374E9F3C</RequestId>
<HostId>rabbitmall-p.oss-us-west-1.aliyuncs.com</HostId>
</Error>
cloudflare 添加page rules
进入cloudflare站点,然后点击page rules
填写缓存规则
商家端后台设置
进入应用 云存储图片
,云存储配置中,选择您的Bucket,以及访问URL(访问URL设置成您在CF设置的图片域名)
对于这块,详细参看:Fecify 云图片存储