利用阿里云搭建WordPress网站 – 动静分离和CDN加速

本文涉及的产品
对象存储 OSS,20GB 3个月
.cn 域名,1个 12个月
全局流量管理 GTM,标准版 1个月
简介: WordPress是一种非常流行的博客网站平台,也可以当作一个内容管理系统(CMS)来使用, 是世界上使用最广泛的博客系统之一。WordPress有非常多优秀的插件,使得这个开源产品变得非常容易扩展,满足不同的需求。

WordPress是一种非常流行的博客网站平台,也可以当作一个内容管理系统(CMS)来使用, 是世界上使用最广泛的博客系统之一。WordPress有非常多优秀的插件,使得这个开源产品变得非常容易扩展,满足不同的需求。
我准备利用一个系列的文章,来展示如果利用阿里云的各种产品(弹性计算,数据库,安全等等),搭建一个完整的WordPress网站。内容包括:

三、动静分离和CDN加速

动静分离是网站优化的常见方式,通过将网站静态资源与后台应用分开部署,通过提高静态咨询的访问速度来提高用户的体验。
用户上传的附件本来存储在NAS文件存储当中,可以通过WordPress插件放入阿里云的OSS对象存储中,存储降低成本。CDN加速的部分选择了阿里云的CDN产品,而没有使用DCDN全站加速(https://www.aliyun.com/product/dcdn),其主要原因是后面的演示会增加高防IP会有冲突;否则利用DCDN的动态加速功能,能够让网站的动态请求通过阿里云的CDN边缘节点进行跳转,回源速度更快。
这个部分的架构图如下,基于上一个版本增加了:

  • OSS对象存储:存放用户向WordPress上传的附件
  • CDN:通过CDN边缘节点的缓存机制加速附件静态文件的读取

1

准备OSS存放附件

阿里云OSS对象存储(https://www.aliyun.com/product/oss)没有预付费版本,所以务必记得购买资源包来抵扣用量,否则很不划算。首先创建一个Bucket,注意读写权限(ACL)应该设置为私有,后面用授权来控制使用,否则如果被刷的话会导致使用费用大增。

2

创建完成之后,需要获取地域节点VPC内网地址和Bucket域名外网地址记录下来,后面会用到。

3

然后给OSS填加域名,这个域名注意要和主站域名不一样,才能让静态附件文件到OSS来处理。这里没有使用CDN加速功能,后面单独配置也是一样的。
另外要注意,如果域名和DNS不是在同一个账号下面的话,最后一个自动添加CNAME记录功能也是不可用的,需要手动在DNS里面添加前面记录的Bucket域名外网地址。

4

然后回到安装并设置WPOSS插件。需要配置Bucket名称,前面记录的地域节点(内网),AK信息(参考https://help.aliyun.com/document_detail/31827.html),本地文件夹(使用默认值wp-content/uploads),和最后一项Bucket域名+文件路径尾巴。Bucket域名就用前面在DNS中设置的域名,当然也可以直接使用bucket域名外网地址,只不过显得网站不够专业罢了。
5

6

设置完成之后,在WordPress的媒体中插入一个文件试试,然后就可以在OSS中看到了。如果在设置时选择了“不在本地保留备份”选项,那么连接在ECS的NAS中的本地文件夹(默认为wp-content/uploads)中也不会再保留文件。

7

8

前面将OSS的ACL设置为了私有,为了让WordPress的读者可以下载文件,可以利用Bucket Policy授权功能,将资源路径(默认wp-content/uploads/*)中的资源以HTTP的方式进行读取,这样才能让读者看到并且下载博文中的附件。参考https://help.aliyun.com/document_detail/85111.html

9

10

OSS是按使用量收费的服务,如果被他人盗链有可能会产生额外费用。所以,一般来说需要利用防盗链功能进行防护。添加域名(https后面才会用到)即可。参考https://help.aliyun.com/document_detail/31901.html

11

利用CDN加速

WordPress最大的数据一般都是来自附件文件,添加CDN可以大大提高用户的文件下载速度。阿里云的CDN(https://www.aliyun.com/product/cdn)边缘节点有2500+个,大大高于腾讯华为的1100+个,可见阿里云在CDN内容分发网络上的重视和投入。
另外提一句,阿里云的CDN类产品里面有一个很重要的产品叫做DCDN全站加速(https://www.aliyun.com/product/dcdn),不仅仅和一般CDN一样,支持静态文件加速,还能利用阿里云丰富的边缘节点进行动态加速。动态加速最近支持了Websocket和IP应用加速,个人理解在业界已经是数一数二了,可以了解一下:https://yq.aliyun.com/articles/686839https://yq.aliyun.com/articles/703346
不过这次demo使用的是纯静态加速,就先上一个一般的CDN好了。注意设置源站信息要选择OSS域名,端口80(对应之前OSS的Bucket Policy授权为HTTP)。
12

13

设置完成之后把系统生成的CNAME添加到DNS云解析中。主机记录可以随意选,一般用static或者oss这种比较容易理解的吧。
14

回到OSS中确认一下,应该可以看到自动拉取的DNS和CDN信息,这就表示设置完成了。
15

16

回到WordPress上传一个文件试试看,这次确实上传到了OSS的Bucket里面。
17

相关实践学习
Serverless极速搭建Hexo博客
本场景介绍如何使用阿里云函数计算服务命令行工具快速搭建一个Hexo博客。
相关文章
|
3月前
【wordpress教程】wordpress博客网站添加非法关键词拦截
有的网站经常被恶意搜索,站长们不胜其烦。那我们如何屏蔽恶意搜索关键词呢?下面就随小编一起来解决这个问题吧。
60 1
|
15天前
|
安全 CDN
阿里云CDN产品解读及全站加速在游戏行业的最佳实践!
阿里云CDN(内容分发网络)为全球用户提供快速、稳定、安全的内容分发加速服务,显著提升访问响应速度和成功率
|
3月前
|
弹性计算 关系型数据库 MySQL
使用资源编排 ROS 轻松部署单点网站——以 WordPress 为例
WordPress 是流行的开源CMS,阿里云的ROS(Resource Orchestration Service)提供模板化部署服务,简化云上环境如VPC、ECS、MySQL的创建。用户可通过ROS控制台选择模板一键部署WordPress,配置包括实例区、类型、系统盘及密码等参数。ROS模板定义了资源、参数和输出,自动处理依赖关系,实现云资源和应用的自动化部署。通过ROS,用户可以高效管理和更新整个资源栈,实现快速、可靠的云服务部署。
199 1
使用资源编排 ROS 轻松部署单点网站——以 WordPress 为例
|
3月前
|
存储 前端开发 定位技术
关于如何用wordpress搭建付费资源网站,modown付费主题推荐
关于如何用wordpress搭建付费资源网站,modown付费主题推荐
关于如何用wordpress搭建付费资源网站,modown付费主题推荐
|
3月前
|
缓存 监控 前端开发
利用CDN提升网站性能的技术探索
【7月更文挑战第8天】CDN作为提升网站性能的重要工具,已经广泛应用于各类网站中。通过减少延迟、加速静态资源加载、提高网站可用性和优化带宽成本等方面,CDN为网站运营者提供了全面的性能优化方案。然而,要充分利用CDN的优势,还需要合理选择CDN提供商、正确配置CDN服务以及持续优化网站内容。只有这样,才能真正实现网站性能的提升和用户体验的优化。
|
3月前
|
搜索推荐
wordpress网站添加一个临时维护功能
wordpress网站添加一个临时维护功能
45 3
|
3月前
|
Ubuntu 关系型数据库 MySQL
Ubuntu系统本地搭建WordPress网站并发布公网实现远程访问
Ubuntu系统本地搭建WordPress网站并发布公网实现远程访问
|
4月前
|
弹性计算 Java Linux
部署单点WordPress网站
在特定场景下编写模板的流程比较固定,本篇文章以《部署单点 WordPress 博客平台》为例,讲述如何完成一个部署成功率高、适配场景广的模板。大多数在 ECS 上部署应用的模板都可以参考此教程来编写。
27476 4
|
3月前
|
PHP 数据安全/隐私保护
WordPress网站添加输入密码才能访问功能
为你的网站添加 php 输入密码访问网站功能,这个功能其实很简单,在应用中的场景也是往往为内部或是个人使用的页面里面,在登陆的时候可以弹出一个窗口,做隐私保护,以下的代码可以满足大家的这个功能,同时可以在代码里自定义密码。同时只要在现有代码的上下添加好加密的代码就可以。记得要调整一下默认密码。不然会被入侵的。
35 0
|
4月前
|
JavaScript 开发工具 git
大事件项目64----打包发布_cdn地址引入,免费cdn的网站
大事件项目64----打包发布_cdn地址引入,免费cdn的网站
下一篇
无影云桌面