本篇主要叙述如何为站点配置 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 防护**,添加防护规则
点击保存
配置教程
- 服务器安装宝塔面板