零基础Windows Server搭建部署Word Press 博客系列教程(3):弱鸡变猛男之部署CDN加速和缓存加速
我们博客里面存在的各种媒体文件、压缩文件、脚本文件,这些文件可能很大而且不需要随时生成。如果我们的服务器带宽很小,访问我们网站的用户等待加载完成就需要很长时间,那么访问速度会很慢。因此我们需要通过第三方服务器把这些文件转发给用户,这就是CDN。
因为Word Press依赖PHP和MySql动态加载的网页平台,所以每次用户访问我们的网页时服务器就要调取数据库、生成网页等操作,导致了访问慢。缓存加速利用静态网页把网页的内容做成了类似一张照片,减少了服务器负荷,从而加速了访问,所以我们首先要对网站进行静态改造,但这一定程度上影响了用户与服务器交互。详见百科:https://baike.baidu.com/item/动态页面静态化。
首先我们来配置WordPress缓存插件环境。我们需要先给服务器的IIS开启URL重写功能,只有开了URL重写才能开启WP的固定链接功能,没有固定链接我们就只能访问动态网站,类似abc.com/index/abc.php?asdhvbaksjdvv这样。假如用户访问到的网站都不一样,我们就不能够给每个网站都做缓存和加速。
Web Platform Installer 5.1
首先我们在服务器上安装WPI工具,相关链接https://www.microsoft.com/web/downloads/platform.aspx
安装URL重写工具
完成安装后在应用程序当中搜索关键字”URL”,找到”URL 重写工具 2.0″,添加并安装它。完成以上步骤后重启IIS。
完成后进入WP后台,配置固定链接格式。
固定连接格式
由于WP和IIS的兼容性问题,推荐使用和我一样的自定义结构。当然你也可以选择其他结构,但是注意某些格式,特别是包含文章名字的链接格式。因为中文链接很有可能会导致重定向失败,显示找不到相关页面。
现在我们测试一下自己的网站访问是否正常。可以看到我们的文章链接变成了有序的地址,并且能够正常访问。
如果一切正常,那么我们开始安装配置 WP Super Cache 缓存插件。
缓存位置配置
缓存插件的配置相对简单,只需要开启缓存和更改一下缓存文件的存放位置。更改缓存位置是为了方便我们在服务器中单独管理,假设你的缓存巨大那我们肯定是要把缓存放到一个具有足够空间的存储区域。另外,最好把缓存位置的文件夹添加到Windows Defender的排除目录,防止引起冲突。具体操作请看上一篇文章,这里就不重复介绍了。
注意:如果你不懂其中复杂的配置选项,千万不要随便更改,使用默认设置就可以完成绝大多数功能的配置。
自动测试缓存
完成配置后我们可以点击WP SC插件的通用菜单页面的缓存测试来检测缓存建立是否成功。可以看到全部显示OK,说明相关缓存已经生效。
下面我们开始教大家配置阿里云CDN和WP SC插件来使用CDN加速,彻底提升网站的访问速度。以我自己使用的阿里云为例。首先需要购买一个CDN加速包,其次由于我们配置了HTTPS(具体请看上一篇),需要另外再购买一个静态HTTPS请求数包(因为本篇开头已经教大家配置好了静态链接)。
阿里云CDN控制台https://cdn.console.aliyun.com/overview
CDN控制台主界面
CDN加速包1
CDN加速包2
下面的步骤有些繁琐,各位仔细体会。
首先CDN加速是通过第三方服务器给你加速的,所以你需要一个域名把需要加速的内容指向这些第三方服务器。因此你可以用一个不是本站的域名来完成这项工作。比如说可以使用一个全新的域名或者使用一个子域名。a.abc.com就是abc.com的子域名。同样的,我们可以设置一个cdn.wbsite.com的域名,其中的wbsite就是你的主域名。此时我们就能通过cdn.你的主域名.com来访问cdn服务器。因此我们需要给自己的主域名添加一个子域名。
好了,现在你应该能明白其中的道理了,不过这个步骤先不会用到,我们先来配置一个cdn服务器。
CDN控制台-域名管理
配置CDN,源站地址以网站域名为例
首先在你的CDN控制台中添加一个CDN域名。加速域名就是以后你将通过这个域名来访问cdn服务器。源站域名就是被加速的域名或IP,比如你的网站域名或IP,以后cdn服务器将会通过这个地址下载备份资源。端口就是开放端口,http是80,https是443。加速区域就根据自己买的加速包类型自己选择。
完成后系统会自动进行分配CDN服务器,这可能需要几分钟。分配完成后就能在域名管理列表中看到一个有黄色叹号的CNAME。CNAME就是CDN的内部地址,这时你需要配置DNS解析,把你的子域名解析到CNAME上。
DNS控制台
打开DNS控制台https://dns.console.aliyun.com
添加一条解析记录,用来把你的子域名解析到CDN加速服务器。记录类型一定要选择CNANME,主机记录就是类的子域名,记录值就是改成CDN控制台中的CNAME地址,复制过去就好了。等待几分钟让DNS解析生效,这时你的CDN控制台中的CNAME的黄色!就会消失,变成绿色√。
打开自己电脑的shell,尝试ping一下自己的cdn加速的子域名,看看访问是否正常。正常说明解析已经生效,DNS配置成功。因为我们的CDN已经开通了https,为了配合https我们需要给cdn部署一个专有SSL证书,没有部署这个证书网站就不能完全https化,在浏览器访问时可能会出现风险提示。
找到SSL证书入口
购买证书
购买免费证书
证书部署
阿里云提供了免费证书,所以就选择了免费证书。注意:购买后绑定的域名一定要是你的CDN的子域名,否则无法部署!最后在证书控制台中把证书部署到CDN上。
好了,以上就是CDN的基本配置,现在回到刚才的CDN控制台,点击管理CDN。
点开基本配置,进行源配置。
源站信息配置成了IP和443端口(HTTPS)
如果你的源站信息配置成IP了的话请往下看,否则跳过这段
回源设置
如果你的源站配置成了IP,就把回源HOST配置成你的网站,把回源SNI也配制成你的网站。回源HOST是指CDN将从该地址访问资源,因为你的IP的主机可能绑定了多个域名(网站),默认源站IP虽然也能访问但是对于CDN来说就不知道源站IP所对应的哪个域名是正确的,所以需要手动指定。SNI也是如此。
如果你的源站信息配置成域名了的话请看这段
如果你的源站配置成了域名,就只需把回源HOST配置成你的网站即可。
以上就是CDN加速的源配置,下面应用之前的SSL证书。
CDN 应用SSL证书
点击HTTPS配置,应用之前申请的SSL证书。
配置优化
开启优化选项,提升性能和速度。
开启 WP SC插件的CDN加速
最后回到WP的WP Super Cache插件,打开CDN支持。在站点地址中填上你的网站域名,如www.abc.com,在off-site URL中填上刚才配置好的CDN加速子域名,如cdn.abc.com。
如果你的博客上放了一写可以提供下载的大文件,建议不要加速这些文件。
好了,以上就是所有教程。有疑问可以留言,欢迎点赞打赏。
大家也可以到性能魔方网站去测试自己的加速效果。
没CDN加速前测试得分,加载时间超过半分钟
CDN加速后测试得分,加载时间不超过3秒
零基础Windows Server搭建部署Word Press 博客系列教程(3):弱鸡变猛男之部署CDN加速和缓存加速的更多相关文章
- 利用阿里云服务器免费体验word press博客、个人网站
本文首发于我的个人博客:https://chens.life/create-wordpress-blog.html 前言 目前市面上有许许多多的虚拟云服务器ECS,例如阿里云.华为云.又拍云等等,他们 ...
- 搭建自己的技术博客系列(二)把 Hexo 博客部署到 GitHub 上
1.在GitHub上建一个新仓库
- ubuntu server 搭建自己的个人博客及其他网站
一, 安装apache2服务器 sudo apt-get install apache2 二,安装mysql服务器 sudo apt-get install mysql-server 此时会提示输入M ...
- 搭建自己的技术博客系列(一)使用 hexo 搭建一个精美的静态博客
1.安装 Git 和 nodejs https://hexo.io/zh-cn/docs/
- 搭建自己的技术博客系列(五)hexo博客接入busuanzi插件,展示访问量和网站运行时间
busuanzi计数脚本 busuanzi官方指引 一.安装脚本(必选) 要使用不蒜子必须在页面中引入busuanzi.js,目前最新版如下. 不蒜子可以给任何类型的个人站点使用,如果你是用的hexo ...
- hexo零基础搭建博客系列(一)
关于其他搭建 [hexo4快速搭建博客(二)更换主题](https://blog.csdn.net/weixin_41800884/article/details/103750634)[hexo4快速 ...
- 利用Github和Hexo搭建独立的个人博客--基础篇
利用Github和Hexo搭建独立的个人博客--基础篇 摘要:本文主要参考了使用hexo和Github上创建自己的博客.如何搭建一个独立博客--简明Github Pages与Hexo教程和使用GitH ...
- 使用Hexo+Github搭建属于自己的博客(基础)
前言 hexo是一个台湾人做的基于Node.js的静态博客程序,优势是生成静态文件的速度非常快,支持markdown, 我最终选定它的原因是它速度快而且不容易出错,并且可以一键部署到github或者其 ...
- Hexo+GitHub+Netlify一站式搭建属于自己的博客网站
喜欢的话请关注我的个人博客我在马路边https://hhongwen.cn/,此文为博主原创,转载请标明出处. 更好的阅读体验请点击查看:Hexo+GitHub+Netlify一站式搭建属于自己的博客 ...
- 使用Docker部署Spring-Boot+Vue博客系统
在今年年初的时候,完成了自己的个Fame博客系统的实现,当时也做了一篇博文Spring-boot+Vue = Fame 写blog的一次小结作为记录和介绍.从完成实现到现在,也断断续续的根据实际的使用 ...
随机推荐
- Python-提高-2
阅读目录 1.多继承以及MRO顺序 2.再论静态方法和类方法 3.property属性-讲解 4.property属性-应用 5.魔法属性 6.面向对象设计 7.with与"上下文管理器&q ...
- 批量登录软件,聚合登录,同时支持:小红书,快手,B站,视频号,淘宝光合,公众号一键运营管理,降本增效。
在数字化时代,我们常常需要管理多个在线账号,这不仅增加了管理的复杂性,还可能导致效率的降低.为了帮助用户简化这一过程,我们推出了六款功能强大的聚合登录软件,涵盖了小红书.快手.B站.视频号.公众号和淘 ...
- jquery datatable 全选,反选 参考文档
1 版本号 DataTables 1.10.12 2 API文档地址 http://datatables.club/reference/option/ 官方option http://datatabl ...
- 关于Requests交互超时的处理方式
拿 https://aes.cryptohack.org/ecb_oracle 这道题来做示范. 由于这个链接的本地服务器在外国,因此我们很容易就会连接超时. 如下一个脚本: import reque ...
- Abp Vnext 中如何统一接口返回值
ABP Vnext Vue 的实现 https://github.com/WangJunZzz/abp-vnext-pro 在使用 abp 的过程中,如果提供给第三方接口要实现返回值统一需要怎么做? ...
- vant+vue控制列表展开
<van-list v-model="loading" :finished="finished" finished-text="没有更多了&qu ...
- python通过实例方法名字的字符串调用方法
目录 方式1 - 反射 hasattr 方法 判断当前实例中是否有着字符串能映射到的属性或者方法, 一般会在 getattr 之前作为判断防止报错 getattr 方法 获取到当前实例中传入字符串映射 ...
- python之发送邮件(smtplib)
我们在测试完成后,都会发一份邮件也就是我们的测试报告,那么既然要自动化,是不是也可以通过python帮助我们发送邮件?当然这么强大的python可以帮助你完成这个需求 SMTP SMTP(Simple ...
- AI工具推荐——Cherry Studio
Cherry Studio介绍 Cherry Studio是一款支持多模型服务的 Windows/macOS GPT 客户端. 它的主要特点如下: 多样化的大型语言模型提供商支持 ️ 主要的大型语言模 ...
- 一图一知-vue强大的slot
vue常用的slot知识点记录