使用阿里云ESA加速网站访问体验

本文由 简悦 SimpRead 转码, 原文地址 blog.eyyyye.com

最近在 Google Search Console 的「核心网页指标」中,我收到了一个黄色的警告:博客网站的 LCP(最大内容绘制)超过 2.5 秒。

因为博客采用单点部署架构,所有的资源都依赖单个节点处理,打开页面时同时加载大量 CSS、JS 和的图片等,导致了网站打开速度较慢。所以考虑将静态资源接入到 CDN 服务中以优化博客访问速度。

在寻找 CDN 服务商的时候,发现阿里云提供了边缘安全加速 ESA 业务,可以直接将全站接入阿里的全球 CDN,同时提供了 DDos 等安全访问功能,所以决定接入阿里云的 ESA 业务,记录一下接入过程。

一、准备工作

  1. 需要接入的域名管理权限(需要修改 DNS 解析记录);

  2. 阿里云账号(开通边缘安全加速 ESA 业务);

3.SSL 证书(参考:acme.sh 免费申请 ssl 证书升级 https,或者直接使用阿里云免费证书);

二、接入 ESA 流程

1. 添加站点(需要接入的主域名)

登录阿里云后,选择左上角侧边栏菜单图标,找到 “边缘安全加速 ESA” 后点击进入控制台:

点击【站点管理】-【新增站点】按钮添加站点:

输入要接入的域名(主域名):

选择加速区域和接入方式(根据需要选择,可选 NS 和 CNAME 的方式,因为域名下还有其他服务,所以选择 CNAME 的接入方式):

下一步之后选择套餐(基础版每月 50G 流量,现价大概 60 块一年):

完成后进入站点详情页面,获取 DNS 解析数据(主机记录、记录类型、记录值):

2. 验证域名归属

验证站点归属需要在域名服务商(本次配置的域名在腾讯云)添加 DNS 解析记录:

解析记录添加完成后,返回阿里云的控制台,点击验证按钮:

验证成功后就可以进行下一步操作了。

3. 添加 DNS 记录(需要加速的子域名)

在阿里云 ESA 控制台中,点击站点名称进入站点管理详情页面:

在站点详情页面点击添加 DNS 记录:

在主机记录处填写要加速的子域名名称,源站地址处填写服务器 IP 地址,其他保持默认即可,具体每个字段怎么填写可以参考右侧提示:

下一步选择业务类型,根据具体情况选择(我们是博客网站,直接选择了网站页面的类型):

点击完成后提示添加成功,获取子域名的 DNS 解析记录(主机记录、记录类型、记录值):

如果不小心关了这个页面,可以在 DNS 记录页面处 CNAME 列获取记录值:

4. 解析子域名到 ESA

在域名服务商的管理页面(腾讯云),将需要加速的子域名解析到 ESA 提供的服务地址(上一步获取的记录值):

解析配置完成后,回到阿里云 ESA 控制台,点击查询按钮验证配置是否完成:

配置成功后点击按钮结果如下:

ESA 控制台页面不小心关掉不要紧,ESA 系统会自动更新子域名解析状态。

5. 配置 SSL 证书(网站开启了 https 需要配置)

在阿里云 ESA 控制台中,点击【SSL/TLS】-【边缘证书】按钮:

证书可以选择申请免费证书或者直接上传自定义证书。

三、加速效果展示

配置完成后可以通过nslookup或者ping命令来验证一下 DNS 解析是否生效,在 DNS 解析生效后,就可以验证一下加速效果了:

Google Chrome 访问加载时间:

Google Chrome 性能分析:

Google Chrome Lighthouse:

在线 ping 测试:

matomo 性能分析:

阿里云 ESA 速度监测:

四、其他配置(按需选配)

1. 实时日志推送

2. 防火墙(WAF)配置

3. 用量封顶配置


扩展说明:

  1. 子域名解析到阿里云 ESA 后,需要十分钟左右开始生效。

  2. 可以通过阿里云 ESA 提供的链路追踪功能测试防火墙命中的相关配置规则。

  3. 用量封顶需要配置,以免产生大额账单。阿里云 ESA 基础版流量超过套餐后价格为 0.198 元 / GB。