CDN 网站部署全站加速服务

本篇主要叙述如何为站点配置 cdn 加速服务,大家可以选择合适的服务供应商

问题

当我配置完成后,我发现:为什么站点的打开速度还不如从前呢?不是 cdn 加速吗?这怎么还降速呢?


于是我便开始了复盘,最后的结果是:CNAME 解析错误,就是跟没没有解析到供应商。我天呐,原来我开了近一个月的服务,都是未开启的状态啊,瞬间崩溃,下面我们就来看看如何正确开启 cdn 全站加速服务

知识点

为了让大家了解的更清楚呢,这里搬运一波词条的解释,然后通俗讲解

DNS 解析

域名解析(Domain Name System)是把域名指向网站空间 IP,让人们通过注册的域名可以方便地访问到网站的一种服务。IP 地址是网络上标识站点的数字地址,为了方便记忆,采用域名来代替 IP 地址标识站点地址。域名解析就是域名到 IP 地址的转换过程。域名的解析工作由 DNS 服务器完成。
域名解析也叫域名指向、服务器设置、域名配置以及反向 IP 登记等等。说得简单点就是将好记的域名解析成 IP,服务由 DNS 服务器完成,是把域名解析到一个 IP 地址,然后在此 IP 地址的主机上将一个子目录与域名绑定。

通俗来讲就是用一串你自己可以定义的域名,来解析到复杂、不便记忆的IP 地址上。互联网中的地址是数字的 IP 地址,域名解析的作用主要就是为了便于记忆。

CDN

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

简言之,用户访问服务器资源时,不同地区的用户根据距离服务器的远近有着不同的响应速度,你可以理解成双十一秒杀购物,如果你就在服务器旁边,理论上你秒杀到对应商品的概率是远大于其他用户的


cdn 的供应商有很多台分布在不同地区的服务器,当你需要访问的资源加入 cdn 后,cdn 服务器会定期从你的服务器拷贝资源。这样当用户访问你服务器上的资源时,cdn 会自动让用户访问到距离他们最近的一台 cdn 服务器上的资源

根据距离的远近,将用户的请求分配到不同的服务器上,从而实现加速的作用,也就是 内容分发网络

HTTPS

HTTPS (Hyper Text Transfer Protocol over SecureSocket Layer),是以安全为目标的 HTTP 通道,在 HTTP 的基础上通过传输加密和身份认证保证了传输过程的安全性。HTTPS 在 HTTP 的基础下加入 SSL,HTTPS 的安全基础是 SSL,因此加密的详细内容就需要 SSL。 HTTPS 存在不同于 HTTP 的默认端口及一个加密/身份验证层(在 HTTP 与 TCP 之间)。这个系统提供了身份验证与加密通讯方法。它被广泛用于万维网上安全敏感的通讯,例如交易支付等方面。

看图,相信你一定遇到过这样的网站

出现这样的情况,表示这个网站使用了 HTTP 协议传输数据,提醒用户谨慎访问网站。 HTTP 协议是明文传输协议,无法加密传输数据或校验数据完整性,也无法进行身份验证,这时候就有必要了解下 SSL 证书

SSL

SSL(Secure Sockets Layer 安全套接字协议),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS 与 SSL 在传输层与应用层之间对网络连接进行加密。

个人使用的话,没有更高的要求,我们到供应商处申购免费的证书就好,下文配置会详细讲到

配置 CDN 服务

这里以又拍云为例,演示配置过程,其他供应商类比操作即可

绑定 upyun

这里提醒大家,使用一个新的产品时一定要仔细阅读官方文档,不然怎么会有:没有好文档的产品不是合格产品的说法呢?有关于 upyun 资源的绑定和注册,请直接访问官方文档

添加解析记录

这里我主要想强调的一点就是 dns 记录的添加,大家在这里获取到对应的 CNAME 域名 后,到域名的供应商出添加解析记录,这里我以万网接入为例

云解析 DNS 控制台 找到 添加记录

主机记录 位置处要特别注意,有以下两种情况

  • 顶级域名:主机记录为 @
  • 子域名:主机记录为 二级域,例如:synopsis.coder-jason.cn 这个二级域名,主机记录处填写 synopsis

其余项按照下图配置就好

测试

我们在本地打开命令行工具,输入 ping 指令到自己的域名,查看 dns 配置是否生效,得到图示响应即配置成功,也可以通过官方方法测试配置

安全性提升

SSL 证书部署

大家在域名的提供商处可以找到 数字证书管理服务控制台 ,填写信息后提交申请即可

待审核通过后,我们下载部署就好,这里以 Nginx 部署为例。服务器安装 宝塔面板 后(详细步骤请参考文),点击 ssl 证书,在对应窗口粘贴我们下载好的证书就可以了,注意区分文件后缀,不要粘贴错误
在这里插入图片描述
因为使用了又拍云的 cdn 服务,所以也需在图示位置添加证书

至此,网站就实现加密访问啦,您可以通过ssl 状态检测工具查看配置状态

IP 访问限制

upyun cdn 管理控制台 下拉找到 Ip 访问限制

点击管理添加限制规则

点击保存

CC 防护

在 upyun cdn 管理控制台 访问控制中找到CC 防护,添加防护规则

点击保存

又拍云联盟

如果不介意站点下方添加服务商 logo ,可以加入又拍云联盟免费获取每月 10GB 存储空间 + 15GB 流量

点击这里预览添加效果


配置教程

  • 服务器安装宝塔面板