前言

建议优化前先通过阿里云网站运维检测平台测速自己域名在国内外访问延迟,之后也便于做对比。

如何算成功

如下图,当国外访问的时候[解析结果IP]{.label .primary}不是你的ip,以及你能通过中间域名成功访问页面,比如我目前的中间域名是cname.guicai.work

20240308114043584.png

原理实现简介

首先一般网站被访问的过程是流程图如下
20240308145515771.png

文字说明

  1. 浏览器发起 HTTP 请求,会先通过域名解析到 IP ,去哪个DNS解析商,以及解析规则是自己在域名服务商配置的
  2. 如果你使用了CND加速服务,这时拿到的 IP 就不是你服务器的IP
  3. 浏览器不管,它会向这个 IP 发起 HTTP 数据包,这时CND加速服务就能快速返回缓存的数据
  4. 如果没有就一路跳转到你的自己的源服务器IP拿数据
  5. 浏览器拿到返回数据,网页打开了

加速的原理

网站打开慢,慢的原因一般如下

  1. DNS 服务商解析给你 IP 慢(非常少)
  2. HTTP 请求发起的数据包都是通过路由转发到目的地,所以如果距离越远访问就会越慢,再加上有些路由节点网络阻塞就更慢了(主要是这个)
  3. 中国国际出口宽带有限(所以拉专线说法)
  4. 同一时间访问量太高,服务器扛不住(优化,或者升级配置)

根据上面已知原理,我们可以知道接入一个优秀的 CND 能为我们明确解决2、3点问题,所以我选择了 cloudflare ,它通过全球架设的大量CND节点(边缘节点)为 HTTP 请求选择最快的路由路径,再配合CND节点上缓存静态文件如 js,css,html ,实现不需要路由到我的服务器,就能返回内容,降低我服务器压力

接入 cloudflare 网站整体加速流程图如下

20240308155514422.png

接入教程

本教程适用于网站在国内服务器部署,能通过域名访问
教程案例是域名是在阿里云买的
整个步骤实现是免费的

准备操作

  • 一个新的域名(我的是 guicai.work ) (只要能配置DNS解析到 cloudflare 就行)
  • 一个 cloudflare 账号
  • 一个 payply 账号并绑定了一张银行卡

第一步新域名要走 cloudflare的DNS解析商

走 cloudflare 的DNS解析商,cloudflare才能为你提供CDN路由优化,防Dos攻击、网站缓存快速响应等。
在 cloudflare 添加新的域名会一步是更新名称服务器,这里指的就是 DNS 服务器地址
[cloudflare 截图]{.label .info}

image.png

[阿里云服务商修改地址截图]{.label .info} (我的生效30分钟)

20240308234254757.png

刷新等待 cloudflare 识别成功

第二步添加一个解析规则到你服务器IP地址

我添加一个cname.guicai.work的域名解析到网站服务器地址,这个规则很正常,就是域名解析地址,随便你想配什么域名,总之你要解析到网站服务器地址就行,记得后面内容用的地方替换成自己的。
如下图

20240309004310757.png

第三步自定义主机名配置(最重要)

:::warning
对网站比较了解,可能已经发现细节了。就是如果我 xirizhi.cn 域名将境外的转发到cname.guicai.work ,反正 cname.guicai.work 已经解析到我服务器地址了,肯定能走 cloudflare 的 CDN 节点加速我的网站。
:::

配置这个的效果是

  1. 服务器上配置的证书,端口绑定都是xirizhi.cn域名,加一个域名侵入式太强,维护麻烦
  2. 域名有 SEO ,各种搜索引擎权重,非常重要,不用这个,浏览器上访问的域名就不是 xirizhi.cn 而是 cname.guicai.work 了,相当于国内是一个域名,国外是一个域名,流量就被分流了

使用 Payply 账号开通自定义主机名

免费100个域名,完全没问题

配置回源地址,我的是cname.guicai.work,你用你的

20240309011951071.png

添加自定义主机名

:::danger
一般大家都有两个域名,比如我:xirizhi.cn 和 www.xirizhi.cn ,都要配上去,没配置上去的域名通过
阿里云网站运维检测平台测试,状态码将是409无法正常显示网页
:::

20240309012405433.png

我的3分钟不到就校验好了
20240309012405475.png

txt 记录就是 DNS 服务器的一种解析规则,这次是要你填写的这个域名管理处增加这种解析记录,像我的阿里云配置图如下

20240309012944772.png

验证方式就是访问cname.guicai.work地址,你用你的

如果没有配置自定义主机名,浏览器的地址不会变,配置的自定义主机名就会变成 xirizhi.cn 域名
比如你现在复制:https://cname.guicai.work 到浏览器打开

配置境外访问使用 CNAME 记录方式,将域名执行cname.guicai.work

配置图如下
20240309012944772.png

结尾

最后再用平台去测试网站打开速度是否比国内还快了,你也可以在国内找一个CND,虽然加速可能没必要,但安全会提升很多。
阿里云网站运维检测平台

推荐一些相关文章便于理解

精选了一部分很用心的文章便于大家反复琢磨,理解

有不懂的,可以在文章下方留言,欢迎思考