Cloudflare 是什么※
以下内容引自维基百科:
Cloudflare是一間總部位於舊金山的美國跨國IT企業,以向客戶提供基於反向代理的內容傳遞網路(Content Delivery Network, CDN)及分佈式域名解析服務(Distributed Domain Name Server)為主要業務。Cloudflare可以幫助受保護站點抵禦包拒絕服務攻擊等網絡攻擊,確保該網站長期在線,同時提升網站的性能、載入速度以改善訪客體驗。
从上面的描述能看出来,Cloudflare 主要能做以下几件事:
- CDN
- DDNS
说人话的话,上面这些有啥作用呢:
- 提升安全(抵御攻击、隐藏主站地址)
- 提升性能(提升载入速度)
当然,Cloudflare 还有其他好多功能,防火墙啊、统计分析啊,啥啥的,这里也就不赘述了,感兴趣的朋友可以去官网了解一下。
对了,Cloudflare 的部分功能是收费的。
具体的收费策略可以看下图:
不过对于个人站长或者个人网站来说,最最基础的免费版本就足够了,因为我们想要的无非就是让网站在各地的访问速度都能快一点,可以的话,顺便提升下网站性能。最重要的,生命在于折腾,闲着也是闲着,有免费的东西可以折腾,为什么不上?
上面划线部分请自动屏蔽。
好了,闲话少说,这不是一个介绍 Cloudflare 的广告贴,这是一个教大家怎么在把阿里云上的网站套一层 Cloudflare 的技术贴。
准备工作※
需要准备以下几样东西:
- 有独立IP的服务器(比如我的是阿里云vps)
- 拥有控制权的域名(比如我的是 bottle.studio)
- Cloudflare 账号
以上几样缺一不可,准备好了我们就开始。
对了,多说一句,因为咱们下面的教程都是直接使用的相关网站,样式、步骤什么的可能会在以后有区别,我也不能保证以后网站变化了也会来更新本博客,大家在看的时候注意领会精神,样式再怎么变,需要做的事就是那些。
开搞※
Cloudflare 设置※
1、先点击 Add Site,把域名添加上,然后下一步
2、选择一个付费方案,这里我们选择免费的,然后下一步
3、检测已有 DNS 记录,这里 Cloudflare 会把能检索到的 DNS 记录都列在下面,这里我们先不用管,直接下一步
4、替换 DNS 服务器地址,先记录下来 Cloudflare 让我们替换的内容
阿里云域名设置※
1、进入阿里云域名控制台
2、选择 DNS 修改
3、把我们从 Cloudflare 那拿到的 DNS 服务器地址填上
等待※
至此,需要设置的内容已经基本完成,剩下的就是等待。
先回 Cloudflare,点击下面的「Check nameservers」,当然,如果你之前已经把页面关了,也无所谓,因为这个就是个跳转,会跳转到当前域名的 overview 页面,如下图:
我们现在需要做的,就是等。
一般24小时之内会完成,完成之后会收到邮件通知。
我这个例子里面从设置完成到收到邮件,前后10分钟左右。
下面是我收到的邮件通知。
设置 DNS 解析记录※
可以看到,我们的域名已经在 Cloudflare 控制台的 DNS 解析记录里面了,添加解析记录什么的和其他网站的都是一样的。
这里说一下最右面一列「Proxy Status」的含义:
名称 | 含义 |
---|---|
DNS only - wildcard | 域名通配符,只解析DNS,不代理,每个域名只有一个 |
DNS only | 只解析DNS,不代理 |
Proxied | 解析DNS,同时该记录要经过代理 |
经过代理可以理解为启用 CDN。
后面大家根据需求灵活设置就好。
其他问题※
1、刚刚设置好的网站不可访问
刚刚设置好的网站,由于本机的 DNS 缓存问题,可能会造成无法访问的情况,解决方法也很简单,刷新本机 DNS 缓存就可以。
具体方法可以参考:这篇文章
2、阿里云的域名解析还有用么
没用了,域名解析的服务器都没有用阿里云的了,以后直接用 Cloudflare 的就可以。
看下效果※
最后我们来看一下效果。
现在访问我的网站 http://bottle.studio,查看以下ip地址。
可以看到网站的真实 IP 已经被隐藏,显示的是 CDN(Cloudflare)的 IP 地址。
结尾※
至此,以阿里云为例的 Cloudflare 使用已经完成。
其他的 CDN 大同小异,比如百度云的 CDN、七牛的 CDN。
网站的样式和操作的逻辑可能有些许不同,但核心思想一定是一样的。
这里总结一下我们的操作步骤(账号申请、购买域名、购买服务器这些不算哈):
1、Cloudflare 中添加网站,获取 DNS 服务器地址
2、在阿里云的域名控制台,修改域名的 DNS 服务器地址
3、等待解析生效
4、在 Cloudflare 中设置 DNS 解析记录
当然,使用 Cloudflare 也不是没有缺点,最明显的就有一个:他的服务器在国外。
从我上面的 IP 地址就能看出来,人家服务器在美国,所以国内的访问速度可能不升反降。
对国外访问可能会更友好,但是国内的话,嘿嘿,就要做点取舍了。
希望大家折腾的开心,哪天有时间,我再折腾一篇其他 CDN 的使用教程出来。
设置自己电脑hosts※
在以下地址下载工具:
https://github.com/XIU2/CloudflareSpeedTest
按照页面教程使用后,得到一堆IP,在hosts文件中增加对应项目,如:
一些问题※
这种方法,通过设置自己电脑的hosts没有共通性,不知道有没有直接使CF的服务器应用某某IP的办法。