腾讯云COS对象存储WordPress插件 让网站动静分离跑的更快

腾讯云 COS 对象存储是利用云存储空间来存放静态文件,让网站动静分离跑的更快。我们平时用 wordpress 博客较多,而适用于腾讯云的很多都失效不好用了,今天看到一个腾讯云 COS 对象存储的 WordPress 同步插件,日期比较新,测试了一下也好用。下面魏艾斯博客把用这个插件同步腾讯云 COS 对象存储的过程写出来。

动态网站程序(比如 php、asp、jsp)和静态文件(比如图片)默认放在一台 VPS 上面,流量变大之后会拖慢整个网站打开速度,所以就有了云对象存储这个概念。意思是把动态网站程序和图片之类的静态文件分离开来,这样访问网站速度更快。主要还是国内服务器带宽比较贵,动静分离能够把服务器资源最大化利用。凡是网站坚持做到一定规模的站长未来都要考虑这一点。

插件来源是水冷眸(https://www.slmwp.com/cos-sync-plugins.html)和沈唁志(https://qq52o.me/2130.html)。这两位大佬的插件都是在前人已有插件的基础上自行改进适应了腾讯云 COS 目前的版本,你用哪个都可以,他们自己也在用。

折腾之前请一定要备份网站、数据库,备份是敢于折腾的根本保障,切记!

为什么用腾讯云 COS?

在中国大陆地区使用 COS 标准对象存储的用户,每月可享受一定量的免费存储空间、免费流量、和免费请求。 计费时,优先抵扣免费额度,超出部分再进行后付费结算。

资源类型

资源子类型

每月免费额度

存储空间

存储空间

50 GB

流量

外网下行流量

10 GB

流量

腾讯云 CDN 回源流量

10 GB

请求

读请求

100 万次

请求

写请求

100 万次

像个人博客的小站点足够用了,老魏在本文中拿来存放博客图片,动静分离给云服务器减轻压力。

腾讯云对象存储 COS 资源包,具有高扩展性、低成本、可靠和安全等特点,提供专业的数据存储服务

标准存储容量

归档存储容量

适合随时访问、无需维护、海量规模存储

适用于海量数据的长期存储,低频率访问的场景

100G / 123.24 元 / 12 个月

100G / 38.02 元 / 12 个月

点我优惠购买  原价 156 元

点我优惠购买 原价 39.6 元

更多活动请移步腾讯云长期活动优惠产品汇总    腾讯云优惠活动汇总页面 不定期更新

一、添加存储桶和 API

在腾讯云后台找到对象存储,创建存储桶,所属地域一定选择和你云服务器在同一个地域的,访问权限一般是公有读私有写。

APP ID 设置:在云密钥 API 管理中找到。

secretID 和 secretKey:随机生成,复制下来后面会用到。

二、设置插件

下载地址前面有你自己选择一款吧。在 wordpress 后台的插件>>安装插件中上传(或者 FTP 上传到插件目录 wp-content\plugins 下)这个插件并启用。配置插件有两个途径:一是 WordPress 已安装插件有设置按钮去设置。二是 WordPress 后台左侧导航栏设置>>腾讯云 cos 设置,再点击进入设置页面。

有一点要注意:如果网站是 http 前缀,需要把插件/wordpress-qcloud-cos-master/sdk/Qcloudcos 目录下的 conf.php 文件中的 https://region.file.myqcloud.com/files/v2/改为 http://region.file.myqcloud.com/files/v2/,如果是 https 前缀,conf.php 这里就别改了。

大家参考下图设置吧,插件描述已经写的很清楚了。

三、腾讯云 cos 设置

添加了存储桶之后,要手动创建文件夹,wp-content 文件夹,下面再创建 uploads,访问权限是继承。然后把已发布文章的图片都上传过去。使用腾讯云官方的 COSBrowser 工具操作,速度也蛮快的。如果你看到这里有点迷糊,其实也不难理解。wordpress 博客的图片默认在 wp-content/uploads 下面存放,在腾讯云 COS 下同样创建这两个目录,然后我们就可以上传图片了。

如果你像和老魏这样自定义域名,就在存储桶>>域名管理中添加自定义加速域名,系统生成一个 CNAME 域名,你要给放到域名 DNS 解析当中去,给你的图片单独添加一个域名解析。

后面如果 wordpress 上传新图片无法显示,就在存储桶>>基础设置中开启回源设置,把主域名添加上去,一般问题就解决了。

四、腾讯云 CDN 设置

这里主要说的是添加自定义域名的情况,http 域名就没啥好说的了,https 域名还要把证书文件扔到 CDN 加速里面,强制 301 跳转。

五、修改已发布图片路径

已发布文章中的图片路径需要手动修改。修改可以用 wp 插件修改,也可以进入 phpmyadmin 修改。

再重复一遍,一定要提前备份好网站文件和数据库,再放手折腾。

这里有相关教程:

WordPress 批量替换 url 插件 Velvet Blues Update URLs 安装使用

wordpress 更换域名、数据库批量替换域名过程记录

老魏推荐使用插件替换,用完后删除掉。

到这里接近尾声了,你去前台打开网页试试,已发布文章的图片地址是腾讯云 COS 的地址,再去 wordpress 媒体中添加图片看看,也是 COS 的地址了,这样就实现了动静分离。

后记:

1、魏艾斯博客把手里现有的网站折腾了一下,有一个 http 站没问题,而 https 站就有问题。问题主要出在新建文章的图片上,http 站上传后最开始看不到图片,后来按照上面第三条的回源设置操作了一下,就正常了。但是 https 站这样操作就无效了。所以目前老魏也只能把新建文章图片通过 COSBrowser 工具手动上传到腾讯云 COS 的对应目录中去,为解决这个问题联系了插件作者沈唁,最后也没有找到合适办法解决。

2、为了继续使用腾讯云 COS 对象存储,老魏尝试在 wordpress 后台的设置>>媒体中修改了“文件的完整 URL 地址”,要注意因为没有了插件中的 API 授权,上传图片后是灰色无法显示的状态(其实在老魏这里 https 站传图一直都是这样),新建文章的图片采取手工上传到腾讯云 COS 的办法,麻烦了点不过不会出现看不到特色图片的尴尬情况。

3、魏艾斯博客目前在用的 DUX 模板、memcacehd 和这个插件之间有兼容性问题,一是启用插件后,前台文章列表页的特色图片等待很久才能显示出来,用户体验很差。二是启用、停用插件会导致后台白屏。

请注意:这里插件可以停掉,但如果卸载插件就看不到这两行,img 这个自定义文件 URL 地址也失效了,那样只能在上传图片后手动修改网址路径了。

4、这个插件在老魏这里测试不成功,最终还是卸载掉了,又回到了本地服务器动静态共存的状态。不过确实有不少网友都在使用,也侧面说明对一部分 wordpress 模板来说还是蛮好用的。毕竟这个插件是非官方开发的,不可能做到像官方那样解决全部问题。别的模板我也没有测试过,有使用经验的朋友请在下面留言反馈。

5、这个插件最好用在日 PV 几万的网站点上,这样的动静分离才有实际作用,日流量几千的博客、网站,或网站图片分辨率并不是很大的话,图片放在本地和放在对象存储上几乎没差别。

为此事发工单询问过腾讯云官方也没有提供类似的插件或者组件之类的,如果你有好的解决方法,希望各路大神能开发出更好用的基于腾讯云存储 COS 的 WordPress 远程附件插件

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Python中文社区

Python开发微信公众号后台(系列一)

專 欄 ❈ 段晓晨,写过一点爬虫,写过几篇文章。能力虽有限,会尽量把想说的东西讲清楚。 知乎ID:段小草 知乎专栏:小段同学的杂记, https://zhua...

2.3K10
来自专栏一“技”之长

Xcode创建可复用的代码块 原

        在各种程序开发中,编写代码的效率是非常重要的一个问题,各种优秀的编译器也都有相应的插件用于提高程序员的编码速度。在xcode中,可以通过定义代码...

1352
来自专栏移动端开发

Cocos 2d-X Lua 游戏添加苹果内购(一) 图文详解准备流程

      最近给游戏添加了苹果的内购,这一块的东西也是刚刚做完,总结一下,其实这里不管是游戏还是我们普通的App添加内购这一块的东西都是差不多的,多出来的部分...

1333
来自专栏NetCore

我的采集小程序配置篇

前不久把自己无聊时候写的采集程序贡献了出来,没想到反响还不错,不过可能我写的不是很清楚,让大家在采集中遇到了各类问题,这次说一下如何来配置采集项目,以及如何采集...

2437
来自专栏林德熙的博客

win10 uwp 如何开始写 uwp 程序 安装 VisualStudio创建应用启动流程显示 hellow

本文告诉大家如何创建一个 UWP 程序。 这是一系列的 uwp 入门博客,所以写的很简单

831
来自专栏直播系统开发

(续)通过直播源码搭建直播平台需要准备什么

昨天我们聊了下直播平台搭建前需要准备的重点内容——流媒体CDN,CDN是直播平台搭建及运营过程中的重要环节。除此之外,通过直播源码搭建直播平台时还需要用到他们:

6675
来自专栏互联网软件技术

ajax请求完之前的loading加载

很多时候我们需要引入框架来开发项目,这时我们可能会遇到页面还没加载完源码出来了的问题,给用户一种不好的视觉体验,这是便需要loading加载了,来完善用户体验!

1134
来自专栏性能与架构

向bootstrap学习前端工程

bootstrap是目前最流行的前端开发框架,提供了丰富的前端组件,对于经验丰富的高手来说,其中的每项功能可能并不是太复杂,但由于他功能丰富,已经是一套系统,所...

3087
来自专栏非典型技术宅

Xcode报错: The file couldn't be opened

有位同学给了我一份代码,通过GitHub。下载之后怎么都打不开,总是提示“The file couldn't be opened”。

2751
来自专栏BY的专栏

利用 GitHub Pages 快速搭建个人博客前言快速开始写文章自定义域名进阶利用GithHub Desktop管理GitHub仓库修改个人介绍常见问题其他Star补充最后要说个事情

74010

扫码关注云+社区

领取腾讯云代金券