Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >给GitHub page套上Cloudflare

给GitHub page套上Cloudflare

作者头像
棒棒鸡不棒
发布于 2022-09-02 04:16:40
发布于 2022-09-02 04:16:40
4.3K00
代码可运行
举报
文章被收录于专栏:文鹃阁文鹃阁
运行总次数:0
代码可运行

preface

大家都知道 GitHub page 上的博客是基于 GitHub 服务器搭建的,虽然 GitHub 非常慷慨,给了我们很大的容量和流量,但是毕竟服务器在美国,所以国内的访问速度还是比较慢的,其实挺想把博客移植到我的阿里云学生机上,以后再说吧,目前最方便的方式就是给博客套一层 Cloudflare 来加快访问速度

Cloudflare

Cloudflare 是一间总部位于旧金山的美国跨国 IT 企业,以向客户提供基于反向代理内容分发网络(Content Delivery Network, CDN)及分布式域名解析服务(Distributed Domain Name Server)为主要业务。利用Cloudflare全球Anycast网络,Cloudflare可以帮助受保护站点抵御 DDOS 等网络攻击,确保该网站长期在线,同时提升网站的性能、加载速度以改善访客体验。 截至2020年1月,Cloudflare拥有200多个位于全球各地的数据中心

总的来说。就是一家给用户提供全球 CDN 节点以及 DNS 服务的公司,他好在哪里呢,前面说了,Cloudflare 是基于反向代理的 CDN,也就是说用户在访问套有 Cloudflare 的网站时访问的并不是网站真实所在的服务器,而是一台反向代理服务器,代理服务器将请求转发给真正的服务器,然后将相应返回给用户,这样就可以达到隐藏服务器真实 ip 地址的目的,更重要的是可以防止来自网络上的攻击,这也正是 Cloudflare 这家公司的目的。并且使用 Cloudflare 的 CDN 是免费的,那还等什么,肯定要冲啊

内容分发网络 CDN

内容分发网络或内容分发网络(CDN)是由代理服务器及其数据中心组成的地理分布式网络。目标是通过相对于最终用户在空间上分布服务来提供高可用性和性能。CDNs出现于20世纪90年代末,是缓解互联网性能瓶颈的一种手段。

简单来说,CDN 就是部署在世界各地的缓存服务器,它们会提前缓存网站上的资源,然后当用户想要访问相关资源时,直接从 CDN 服务器上取就可以了。这样不仅可以增加访问速度减少访问延迟,还可以减缓网站服务器上的压力。根据 CDN 的机制,我们在访问服务器时会访问到一个离我们最近的 CDN 服务器,上面已经缓存了服务器的内容,所以这样可以大大提高网页的访问速度。

值得一提的是,自己购买 CDN 服务器的话非常昂贵,国内有很多公司也提供了 CDN 服务,价格也不菲,Cloudflare 在中国也有 CDN 服务器,并且还可以免费使用,对于个人博客是够用了(下图为使用单个服务器与使用 CDN 的区别)

注意: 本篇文章基于 GitHub page ,如果是国内的网站的话,最好不要套 Cloudflare,可能会使得访问速度变得更慢

注册 Cloudflare

想要给 GitHub page 套上 Cloudflare 我们需要两样东西,一样是个人域名,一样是 Cloudflare 账号。我之前已经买了一个域名并且解析到博客地址,所以这一步就省了,没有域名的自己去买一个吧,便宜的很。所以我们接下来就搞搞 Cloudflare

点击注册填完信息之后,网站会问我们有什么计划,直接选择免费的就行了,适用于个人博客

接着填入自己网站的域名(个人域名,不要填 xx.github.io),网站会自动扫描当前域名的解析记录

确认没什么问题的话就可以点击 continue 继续下一步

修改 DNS

然后官方就会要求我们修改域名的 DNS 服务器,下面给出了我这个域名目前的 DNS 服务器以及官方要求我们改的 DNS 服务器,按要求更改就行了

我的域名是在阿里云的万网上面买的,更改 DNS 服务器的路径为 域名服务-域名列表-管理

然后就可以看到当前域名的具体信息,在 DNS 服务器哪里点击修改 DNS ,将现在的 DNS 服务器换成 Cloudflare 的 DNS 服务器保存即可

改完了要过一会儿等 DNS 服务器生效后,官方就会发送信息到邮箱里说域名解析成功,见到以下界面就说明我们的博客已经在 Cloudflare 的保护之下了

最后不要忘了将 Always Use HTTPS 勾选,这让我们的网站强制使用了 HTTPS 通信,减少了数据被嗅探的可能性。而且 Cloudflare 默认是双端加密的,从浏览器到 Cloudflare 以及从 Cloudflare 到网站服务器都是经过了 HTTPS 加密通信

我们来看看是否生效,查询一下我们的服务器域名解析的 ip 和 xx.github.io 解析的 ip

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ nslookup szukevin.site

Name:      szukevin.site
Address 1: 104.28.31.244
Address 2: 104.28.30.244
Address 3: 2606:4700:3037::681c:1ef4
Address 4: 2606:4700:3036::681c:1ff4
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ nslookup yarkable.github.io

Name:      yarkable.github.io
Address 1: 185.199.109.153
Address 2: 185.199.108.153
Address 3: 185.199.111.153
Address 4: 185.199.110.153

xx.github.io 解析到的 ip 都是后面四个,这是 GitHub page 的服务器,而上面我们用了 Cloudflare 服务的域名解析出来的 ip 已经变了,这就是反向代理的功劳,隐藏了服务器真实 ip 地址。到这里我们的博客就已经套上 Cloudflare 服务了,不挂代理的访问速度确实快了些(应该不是心理作用)

attention

完事之后关于域名要注意一些事项,由于我们已经将 DNS 服务器改成 Cloudflare 的 DNS,所以之前解析过的域名都无效了,需要在 Cloudflare 里面重新进行域名解析,不能在之前的域名提供商那里进行解析,要在 Cloudflare 的 DNS 选项卡里面进行解析。

这里给出我自己的解析表,顺便说说里面的 Proxy status 代表的含义。可以看到我一级域名是直接解析到 GitHub page 的,所以状态为 Proxied ,表示经过 Cloudflare 代理访问以达到 CDN 加速和伪装 ip 的功能。有几个二级域名解析到了公网,是我用来做实验的,并没有网站架设在服务器上,所以我不需要 Cloudflare 代理,只要它提供 DNS 解析的功能就行了,所以状态是 DNS only 。还有几个二级域名解析到了内网,同样是我拿来做实验的,我只需要 DNS 服务器解析域名就行了,但是由于 ip 不是公网,无法直接访问,涉及到端口转发等概念,因此状态为 DNS only - reserved IP (reserved IP 就是局域网 ip 的意思)


假设我们将 aliyun 这个二级域名的状态变成 Proxied ,会发生什么呢,名场面,相信很多人都见过,一看图就明白了,Cloudflare 代理了浏览器对 aliyun.szukevin.site 解析到的公网地址的访问,但是由于我这台公网服务器的 80 端口没有假设网站,所以 Cloudflare 到服务器这条路不同,而浏览器客户端到 Cloudflare 是连通的

如果只是 DNS only 的话就会显示网站访问失败,因为这个服务器上确实没有网站,这就没有经过 Cloudflare 的代理直接到达网站真实 ip 地址。然后还有个点,由于我们强制用了 HTTPS ,上面 Proxied 的状态时因为用了 Cloudflare 的服务,所以访问域名时即使出错了也是用 HTTPS 加密的,而 DNS only 就只有不安全的 HTTP 通信了

我还发现用 Cloudflare 解析记录的话挺慢的吧,有时候可能过个几分钟才解析生效,看是否生效就在命令行 ping 一下域名吧,一个很神奇的事,WSL 在 ping 的时候经常会报错找不到域名,而用 windows 自带的 powershell 去 ping 就能够很快知道 ip 地址(更新:后来发现是我的 WSL 坏了…)

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
给网站套上Cloudflare(以腾讯云为例)
当然,Cloudflare 还有其他好多功能,防火墙啊、统计分析啊,啥啥的,这里也就不赘述了,感兴趣的朋友可以去官网了解一下。
知识浅谈
2022/10/04
13.4K2
给网站套上Cloudflare(以腾讯云为例)
Cloudflare 是谁?
Cloudflare 是一家总部位于旧金山的美国跨国 IT 企业,以向客户提供基于反向代理的内容分发网络(Content Delivery Network, CDN)及分布式域名解析服务(Distributed Domain Name Server)为主要业务。利用 Cloudflare 全球 Anycast 网络,Cloudflare 可以帮助受保护站点抵御包拒绝服务攻击等网络攻击,确保该网站长期在线,同时提升网站的性能、加载速度以改善访客体验。
全栈程序员站长
2022/07/18
1.2K0
Cloudflare 是谁?
GitHub pages配置自定义域名利用Cloudflare全球CDN
GitHub pages是github提供免费静态站点托管服务,并提供域名xxx.github.io,xxx是你GitHub账户的名称。一个账户只能托管一个GitHub pages项目。
六月河
2022/10/05
4.5K0
GitHub pages配置自定义域名利用Cloudflare全球CDN
白嫖Cloudflare域名服务!
使用 Github Pages 可以很方便地搭建个人博客静态网站,但在国内访问速度不佳,而且网站访问地址都是xxx.github.io/xxx,也没有体现个性化,可以考虑通过自定义域名+Cloudflare来提升静态资源的访问速度。cloudflare是一家主要提供网络基础设施服务的美国科技公司,包括内容分发网络(CDN)、分布式域名服务(DNS)、DDos防护、互联网安全优化等。全球互联网有20%的流量都经过了Cloudflare的网络代理。作为一个大公司,自然也有很多可以白嫖的服务。
程序员小义
2024/06/19
1.5K0
白嫖Cloudflare域名服务!
亿级Web系统负载均衡几种实现方式
负载均衡(Load Balance)是集群技术(Cluster)的一种应用技术。负载均衡可以将工作任务分摊到多个处理单元,从而提高并发处理能力。目前最常见的负载均衡应用是Web负载均衡。根据实现的原理不同,常见的web负载均衡技术包括:DNS轮询、IP负载均衡和CDN。其中IP负载均衡可以使用硬件设备或软件方式来实现。
Bug开发工程师
2020/03/06
4.2K1
亿级Web系统负载均衡几种实现方式
堪称跨境独立站神器的CloudFlare是什么?
4.域名访问 http://domain.com 跳转到 http://www.domain.com ,301跳转设置
用户10333987
2023/04/28
3.3K0
堪称跨境独立站神器的CloudFlare是什么?
GitHub pages配置自定义域名利用Cloudflare全球CDN
GitHub pages是github提供免费静态站点托管服务,并提供域名xxx.github.io,xxx是你GitHub账户的名称。一个账户只能托管一个GitHub pages项目。
六月河
2023/06/26
2.8K0
GitHub pages配置自定义域名利用Cloudflare全球CDN
CloudFlare:免费CDN加速-自定义节点IP教程
为什么要使用CDN? 内容分发网络(英语:Content Delivery Network或Content Distribution Network,缩写:CDN)是指一种透过互联网互相连接的电脑网络系统,利用最靠近每位用户的服务器,更快、更可靠地将音乐、图片、影片、应用程序及其他文件发送给用户,来提供高性能、可扩展性及低成本的网络内容传递给用户。简单总结有以下几点优势。
骤雨重山
2022/01/17
15.5K0
CloudFlare:免费CDN加速-自定义节点IP教程
Cloudflare域名解析
域名解析是一种服务,通过将域名映射到特定的网站服务器IP地址,使得用户能够通过注册的域名轻松访问网站。这项工作由DNS服务器来执行。Cloudflare是一个知名的云服务提供商,提供DNS解析服务以及其他网络性能优化和安全服务。如果你不知道如何注册一个域名,可以参考《域名注册》这篇文章。
无代码Dev
2024/03/01
3K0
Cloudflare域名解析
将网站接入cloudflare的教程
自此以后,要进行DNS解析,来访问cf即可,要进行代理,打开小云朵即可。还是比较方便的。
huolong
2023/09/17
3K1
将网站接入cloudflare的教程
免费 CDN 加速服务:CloudFlare
CloudFlare 是一家功能非常强大的免费 CDN 免费加速服务,它是通过反向代理(reverse proxy)提供网站加速服务,为站长解决了 jpg/JS/CSS 这些静态文件到 CDN 上的问题,并且通过它部署在全球各大洲的缓存结点服务器(详细列表),提供高效的加速服务。
Denis
2023/04/14
17.2K0
免费 CDN 加速服务:CloudFlare
利用 cloudflare workers来畅游github
要实现在国内利用workers访问github。那么前提条件就是你有一个cloudflare账号以及一个域名。关于什么是cloudflare,这里简单说一下 : Cloudflare 是一家广受认可的公司,在互联网行业中享有良好声誉。他们的服务被许多大型企业和网站使用,以提供网络安全防护、DDoS 攻击防御和性能优化等功能,也是目前还提供免费cdn的良心厂商之一。简称 赛博大活佛。那么话不多说,我们直接开始今天的教程。
huolong
2024/12/25
3870
利用 cloudflare workers来畅游github
Cloudflare 推出全球最快的Dns:1.1.1.1
DNS(Domain Name System,域名系统),万维网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过域名,最终得到该域名对应的IP地址的过程叫做域名解析(或主机名解析)。DNS协议运行在UDP协议之上,使用端口号53。在RFC文档中RFC 2181对DNS有规范说明,RFC 2136对DNS的动态更新进行说明,RFC 2308对DNS查询的反向缓存进行说明。
Alone88
2019/10/22
12.1K0
Cloudflare 推出全球最快的Dns:1.1.1.1
简述负载均衡&CDN技术
曾经见到知乎上有人问“为什么像facebook这类的网站需要上千个工程师维护?”,下面的回答多种多样,但总结起来就是:一个高性能的web系统需要从无数个角度去考虑他,大到服务器的布局,小到软件中某个文件的实现,甚至于某个循环内的运算如果出现不严谨都可能导致全盘崩溃。
马士兵的朋友圈
2020/09/08
1.2K0
简述负载均衡&CDN技术
给网站套上CDN吧--使用CloudFlare
个人理解:相当于你在全球各地都有一台服务器,不同地区的用户访问网站会根据地区,交由不同的服务器处理,从而速度更快,效率更高。 以及,可以隐藏自己网站的真实ip,一定程度上防止DDoS
wo.
2021/06/15
6.2K0
lucky实现动态DDNS域名解析 + https安全访问教程
要实现动态DDNS域名解析和https安全访问,首先得有个域名。域名可以直接在阿里云或者腾讯云购买。我的域名是在腾讯云买的,然后托管到了cloudflare这个平台,为什么要托管到它那儿?因为托管过去后,就算没有ipv4的情况下,也能利用STUN穿透,获取到可以访问的ipv4公网IP和端口,只是这个IP和端口不是固定的,但可以用脚本去监控,要是有变更的话,能直接同步到cloudflare,还能收到邮件通知
季春二九
2025/01/10
3.9K1
lucky实现动态DDNS域名解析 + https安全访问教程
DNS解析与CDN原理
  在互联网冲浪中,我们已经习惯了输入域名连接网站。也许你有了解过网络世界大家的「坐标」都是 IP 地址,但是 DNS 解析怎么找到 IP 地址?更有时,同一个域名申请还会返回不同的地址,这所谓 CDN 是如何实现的?
幻影龙王
2021/09/08
2.2K0
使用 Cloudflare CDN 加速和保护自己的网站
之前发布过 Cloudflare 简介及接入体验,其中并没有写 Cloudflare CDN 的接入使用,本文主要面向不会使用 Cloudflare CDN 新手学会使用 Cloudflare CDN 加速和保护自己的网站。
Skykguj
2022/09/09
15.3K0
使用 Cloudflare CDN 加速和保护自己的网站
装逼必备:大型分布式网站术语分析
来自: 朱小厮的博客 程序猿自媒体已获转载授权 1、I/O优化 1、增加缓存,减少磁盘的访问次数。 2、优化磁盘的管理系统,设计最优的磁盘方式策略,以及磁盘的寻址策略,这是在底层操作系统层面考虑的。 3、设计合理的磁盘存储数据块,以及访问这些数据库的策略,这是在应用层面考虑的。例如,我们可以给存放的数据设计索引,通过寻址索引来加快和减少磁盘的访问量,还可以采用异步和非阻塞的方式加快磁盘的访问速度。 4、应用合理的RAID策略提升磁盘I/O。 2、Web前端调优 1、减少网络交互的次数(多次请求合并) 2、减
企鹅号小编
2018/01/24
7310
DNS、DNS劫持与HTTPDNS:原理、应用与安全分析
DNS(Domain Name System,域名系统)是互联网的一项核心服务,负责将人类可读的域名(如www.example.com)解析为计算机可识别的IP地址(如192.0.2.1)。DNS通过层级式的分布式数据库系统实现域名与IP地址的映射,使得用户可以通过输入易于记忆的域名访问网站,而无需记住复杂的IP地址。
陆业聪
2024/07/23
3530
DNS、DNS劫持与HTTPDNS:原理、应用与安全分析
相关推荐
给网站套上Cloudflare(以腾讯云为例)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档