又拍云
4.7 / 5.0
声明:VPS主机测评网仅分享信息/测评(有时效性),不销售或代购、不提供任何支持,请自行辨别。

评测概述

对于同时面向国内和海外用户的网站,单一cdn难以兼顾。国内CDN(又拍云/七牛云/阿里云)在大陆速度快,但海外节点弱;Cloudflare海外强,但国内慢。

双层架构:国内用户 -> 国内CDN -> Cloudflare -> 源站;海外用户 -> Cloudflare -> 源站。本文以又拍云 + Cloudflare 为例,分步讲解。

一、架构原理

国内用户访问又拍云节点,又拍云向Cloudflare请求资源,Cloudflare再回源到你的源站。海外用户直接访问Cloudflare节点。

优点是国内速度接近国内CDN水平,同时保留Cloudflare的安全防护和海外加速。缺点是增加一层代理,多一跳,但对国内用户影响不大。

二、前提条件

  • 源站域名已备案(国内CDN要求)。
  • 源站已配置好网站(如 baike300.com)。
  • 已有又拍云(或其他国内CDN)账号和Cloudflare账号。
  • 域名DNS支持按线路解析(如阿里云DNS、DNSPod)。

三、步骤1:在Cloudflare上配置源站

  1. 将你的主域名(如 baike300.com)接入Cloudflare,并保持云朵为橙色(代理状态)。
  2. 添加一条A记录,指向源站IP,云朵开启。
  3. 确保Cloudflare SSL/TLS 设置为“Full”或“Full (strict)”。

此时访问 baike300.com 将走Cloudflare。

四、步骤2:在国内CDN上添加加速域名

以又拍云为例:

  1. 添加加速域名:static.baike300.com(建议用二级域名)。
  2. 源站配置:填写 baike300.com(Cloudflare代理后的域名)。
  3. 端口:80和443。
  4. 加速区域:选择“中国大陆”。

又拍云会生成一个CNAME地址,如 static.baike300.com.upyun.com。

五、步骤3:配置DNS分流

在域名DNS服务商(如DNSPod)添加解析:

  • 主域名 baike300.com 做默认解析(可指向Cloudflare IP或CNAME)。
  • 为 static.baike300.com 添加CNAME记录,指向又拍云CNAME地址,线路选择“默认”或“境外”。
  • 再添加一条CNAME记录,同样指向又拍云CNAME,线路选择“境内”。
  • 如果需要强制国内用户走静态域名,修改网站代码中的资源URL(图片、CSS、JS)为 static.baike300.com。

六、步骤4:配置又拍云回源HTTPS

又拍云回源到 baike300.com(Cloudflare),需要处理证书问题。

方法A:在Cloudflare上生成源站证书(免费),下载.pem和.key文件,上传到又拍云“回源证书”处。

方法B:又拍云回源使用HTTP(不推荐,除非源站强制HTTPS)。

建议用方法A,配置如下:

  1. Cloudflare控制台 -> SSL/TLS -> 源站证书 -> 创建证书。保留默认设置(Cloudflare生成)。
  2. 复制公钥和私钥内容,粘贴到又拍云“回源证书”处。
  3. 又拍云域名配置中开启HTTPS,并上传域名的免费/付费SSL证书(访客访问用)。

七、步骤5:测试

  1. 使用国内代理或工具(如17ce)访问 static.baike300.com,检查是否解析到又拍云节点。
  2. 使用海外代理访问 baike300.com,检查是否走Cloudflare。
  3. 查看HTTP响应头,确认X‑Cache或CF‑Cache等头部。

八、常见问题

Q:国内CDN回源到Cloudflare会不会影响海外访问?
不会。海外用户直接访问Cloudflare节点,不经过国内CDN。

Q:国内CDN缓存命中率低?
可能是回源需要过Cloudflare导致延迟。将国内CDN的缓存时间调长(30天),减少回源。

Q:Cloudflare的防火墙规则还生效吗?
生效。所有经过Cloudflare的流量(包括国内CDN回源)都经过防火墙规则。注意不要误封国内CDN的回源IP,可将又拍云IP段加入白名单。

此方案适合有一定技术基础的站长。如果你只面向国内用户,单独使用国内CDN即可;只面向海外,用Cloudflare免费版足够。