免费用CDN加速你的网站-海内外自动分流

引子

众所周知 CDN - Content Delivery Network - 内容分发网络 是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。CDN的关键技术主要有内容存储和分发技术。

这里应该有个很高大上的图片,但我懒 ・ω・`)

CDN的好处都有啥

CDN是在用户与服务器中的一个中继 有了CDN之后。访问者会通过域名解析到CDN服务器(而不是你的网站的服务器),CDN再向服务器请求,服务器再发送回应给CDN,CDN再回应用户 那加速又从何而来呢?这样不是绕远路了嘛? 首先 事实上并不是用户的每次请求 CDN都会向服务器请求,CDN通常会缓存下服务器的内容,只向访问者提供缓存的内容。 其次 CDN一般能减少公网上不必要的转发。 而且 你的网站服务器如果只有一台,只在一个地方,那么离这台服务器物理位置较远的地方,网站速度就多少会慢一点。CDN则通常会在各地有许多节点服务器,用户会就近连接CDN节点。 还有 如果你恰好财力雄厚有不止一台服务器,那么CDN也可以配置负载均衡,自动调配服务器资源。 CDN还可以隐藏服务器的真实IP起到保护网站安全,因为域名解析到的是CDN服务器,而不是你的网站服务器。

免费的CDN

目前个人使用主流的免费CDN有CloudFlare百度云加速 CloudFlare 免费用户的提供的节点都在海外,所以国内通常只能起到减速的作用,但是它的安全保护做的不错

CloudFlare is fast in the world except in China

百度云加速 优点 节点数量说是6-12 CloudFlare 国内免费就没节点,海外也只能接到1-2个 免费支持CNAME解析 支持自有SSL证书 CloudFlare 只能用它送你的经常出问题的证书 也许能优化在百度的SEO 缺点 需要你的域名和服务器已备案 安全防护方面功能不多,好像连人机验证都没 不提供用户地理位置分布 虽然 CloudFlare 也只是按国家分 免费证书限制20个 CloudFlare 没看见有写 流量10G/天 CloudFlare 原则上无限制 单节点吞吐量限制700 CloudFlare 没看见有写 CC攻击保护峰值吞吐量限制2000 CloudFlare 没看到有写 DDOS攻击保护峰值限制5G CloudFlare 原则上无限制 写了自己服务器能吃67T

说百度云加速和 CloudFlare 合作,就是一个东西的 请把百度的“时间不限”改成“一个月内”

两者的功能确实非常相似,但百度云加速确实只在境内快; CloudFlare 确实只在境外快。

配置境内外自动分流

有没有办法境内外自动分流不同的CDN呢? 我们可以用阿里云DNS的智能ISP设置结合CNAME 在 百度云加速 和 CloudFlare 都绑定、验证域名,只用设置连接到你网站服务器的几个解析 百度云加速免费支持CNAME方式,但 CloudFlare 不支持,但我们可以用一个第三方的管理平台 cdn.wzfou.com 来操作DNS并复制CNAME

之前已经在 CloudFlare 有域名的要先删了,在这个平台上添加 安全性未知,也不知道啥时候跑路

把域名的DNS服务器设置到阿里云

别的应该也行

设置一些其他的解析,比如邮箱 设置接入CDN的CNAME解析,百度云加速 ISP设置默认;CloudFlare ISP设置海外 所有 DNS 解析记录

百度云加速支持自有SSL证书,你可以把证书设成一样的,不过 CloudFlare 送的证书真的动不动出问题

效果

使用 17CE ping

阿里云CDN(16¥/100G/1年 还没什么功能的那种) 阿里云CDN - 非常快 阿里云CDN - 非常快 直连IP 直连IP - 快 直连IP - 快 自动分流 自动分流 - 较快 自动分流 - 较快 只用 CloudFlare CloudFlare - 非常慢 CloudFlare - 非常慢 只用 百度云加速 百度云加速 - 海外慢 百度云加速 - 海外慢

自己看完这篇文章感觉字好多,图好少。配置教程部分没啥内容,不过确实挺简单的啦