php版本选择
进入宝塔,选择到我们目前在使用的PHP程序(推荐使用PHP7.2)
等待安装完成之后,记得重启一下php服务!!!
使用Redis和opcache为网站加速
![图片[1]-wordpress缓存插件以及安装扩展加速教程-小白博客](https://xiaobal.com/wp-content/uploads/2025/02/fa0055b51de910055cb9d5be332ea74e.jpg?imageMogr2/format/png/interlace/1/quality/100/strip|watermark/2/text/5bCP55m95Y2a5a6id3d3LnhpYW9iYWwuY29tIA/font/dGFob21hLnR0Zg/fontsize/24/fill/IzAwMDAwMA/dissolve/80/shadow/0/gravity/southeast/dx/20/dy/20)
安装完成后redis应该会自动安装,如果没有在软件商店搜索一下即可
![图片[2]-wordpress缓存插件以及安装扩展加速教程-小白博客](https://xiaobal.com/wp-content/uploads/2025/02/443dd95c85376a68616729a1e4a0bc71-1024x51.jpg?imageMogr2/format/png/interlace/1/quality/100/strip|watermark/2/text/5bCP55m95Y2a5a6id3d3LnhpYW9iYWwuY29tIA/font/dGFob21hLnR0Zg/fontsize/24/fill/IzAwMDAwMA/dissolve/80/shadow/0/gravity/southeast/dx/20/dy/20)
等待安装完成之后,记得
流程
简单的说一个网站打开的流程:wordpress使用PHP为后端服务,由PHP进行html内容渲染,然后传入用户浏览器。
那么这里我们从速度优化上来讲主要需要重视的两个过程:后台渲染速度和前台网页加载速度
后台渲染速度主要由PHP负责,由php查询数据库,生成html内容再返回给浏览器前台网页加载速度主要取决于用户与服务器之间的网速以及请求的内容大小
优化措施
首先分享一下我的建议以及可以优化速度的很有效的措施
- 前台优化:使用CDN加速
- 前台优化:图片使用OSS/COS等第三方储存,减少服务器带宽压力
- 后台优化:不建议使用全静态缓存,会导致很多交互功能不能用
- 后台优化:推荐使用Redis或Memcached缓存功能,不会有任何负面影响
- 后台优化:推荐使用opcache进行PHP加速优化
Redis/opcache缓存教程
php在执行函数最消耗时间的就是查询SQL数据库了,一般来讲一个页面的数据库查询大概在120到260次左右,使用Redis或者Memcached缓存,原理就是将php查询过的数据库缓存下来,下一次相同内容就不再查询数据库了,直接从缓存获取,极大的提高php执行效率。
WordPress官方采用 Object Cache对象缓存,同时主题的也遵循此机制,配合Redis或者Memcached缓存,能将数据库查询降低80%,有效的提高了渲染速度!
Redis和Memcached原理是一样的,我们只需要二选一安装使用即可,优化加速的效果也差不多。我就以宝塔环境安装 Redis为例,进行详细的图文教程。
![图片[3]-wordpress缓存插件以及安装扩展加速教程-小白博客](https://xiaobal.com/wp-content/uploads/2025/02/03c5a2507d926183eff479f4e2fdb36e.webp?imageMogr2/format/png/interlace/1/quality/100/strip|watermark/2/text/5bCP55m95Y2a5a6id3d3LnhpYW9iYWwuY29tIA/font/dGFob21hLnR0Zg/fontsize/24/fill/IzAwMDAwMA/dissolve/80/shadow/0/gravity/southeast/dx/20/dy/20)
WP插件安装
最后一步就是在Wordpress安装 Redis 缓存插件了,支持 Redis 缓存 的插件有很多,我这里以 Redis Object Cache 这款插件为例进行安装
- 直接在插件中心搜索
Redis Object Cache,进行安装 - 启用插件
- 开启缓存
![图片[4]-wordpress缓存插件以及安装扩展加速教程-小白博客](https://xiaobal.com/wp-content/uploads/2025/02/5a7c0a06508168eb2e14c3e0291d8317.webp?imageMogr2/format/png/interlace/1/quality/100/strip|watermark/2/text/5bCP55m95Y2a5a6id3d3LnhpYW9iYWwuY29tIA/font/dGFob21hLnR0Zg/fontsize/24/fill/IzAwMDAwMA/dissolve/80/shadow/0/gravity/southeast/dx/20/dy/20)
![图片[5]-wordpress缓存插件以及安装扩展加速教程-小白博客](https://xiaobal.com/wp-content/uploads/2025/02/c4c69dc24c9ce7123a1083ba23bc796d.webp?imageMogr2/format/png/interlace/1/quality/100/strip|watermark/2/text/5bCP55m95Y2a5a6id3d3LnhpYW9iYWwuY29tIA/font/dGFob21hLnR0Zg/fontsize/24/fill/IzAwMDAwMA/dissolve/80/shadow/0/gravity/southeast/dx/20/dy/20)
这个功能十分简单,不要觉得是英文插件有会影响使用,开启之后看到如下界面就说明成功了。如果没有开启成功,请按照上面的步骤检测php扩展和Redis程序是否安装成功
![图片[6]-wordpress缓存插件以及安装扩展加速教程-小白博客](https://xiaobal.com/wp-content/uploads/2025/02/d22d1414502711bbae9298d7637cd08f.webp?imageMogr2/format/png/interlace/1/quality/100/strip|watermark/2/text/5bCP55m95Y2a5a6id3d3LnhpYW9iYWwuY29tIA/font/dGFob21hLnR0Zg/fontsize/24/fill/IzAwMDAwMA/dissolve/80/shadow/0/gravity/southeast/dx/20/dy/20)
安装好 Opcache 之后会自动配置好扩展参数,如需适当修改,进入配置文件,搜索;opcache,即可看到配置参数
![图片[7]-wordpress缓存插件以及安装扩展加速教程-小白博客](https://xiaobal.com/wp-content/uploads/2025/02/d15d3093dc72650b356d685c062cfff1.webp?imageMogr2/format/png/interlace/1/quality/100/strip|watermark/2/text/5bCP55m95Y2a5a6id3d3LnhpYW9iYWwuY29tIA/font/dGFob21hLnR0Zg/fontsize/24/fill/IzAwMDAwMA/dissolve/80/shadow/0/gravity/southeast/dx/20/dy/20)
对应的配置解释:
opcache.enable=1 (default "1")
;OPcache打开/关闭开关
opcache.memory_consumption=128 (default "64")
;OPcache共享内存存储大小。用于存储预编译的opcode(以MB为单位)。
opcache.interned_strings_buffer=8 (default "4")
;OPcache字符串驻留大小,(以MB为单位)
opcache.max_accelerated_files=80000 (default "2000")
;OPcache控制内存中最多可以缓存多少个PHP文件,建议设置大一点,大于你的项目中的所有PHP文件的总和
opcache.revalidate_freq=3 (default "2")
;OPcache设置缓存的过期时间(单位是秒);几秒内内容不会刷新,如果需要实时更新可以设置为 0
opcache.fast_shutdown=1(default “0”)
;OPcache更快速清理内存的机制,实际效果视环境而异
查看缓存
缓存安装好了之后,怎么查看效果呢?之前就有网友叫我加一个显示sql查询数量以及php渲染时间的功能,其实这个一直都是有的,使用火狐浏览器或者Chrome浏览器按F12进入浏览器控制台Console就能看到了。你可以测试一下,未开缓存以及开启缓存的实际效果。
温馨提示
- 主题更新或者更新重要内容请记得刷新缓存!
- 使用缓存之后,部分不太重要的数据就不会实时更新,主题会自动判断!这种不重要的内容无需关注
- 适当优化,如果未优化就能低于500毫秒那就不建议再做优化了
- 同一个服务器有多个网站,并且又要使用Redis,那么一定要为网站设置不同的数据库前缀!不然数据会乱窜
- 最新郑重提醒,不要用其他会静态缓存的插件或者功能,静态缓存会导致页面所有内容不能实时刷新,比如登录、注册、购买、发布、评论、点赞、签到等等等等就按照本文教程配置缓存就完全够了,主题已经做好了缓存策略,该缓存的自动缓存,该刷新缓存的时候也会自动刷新
- 关于PHP版本,我个人实测php7.2性能优于php7.4,不知道是不是个例,大家可以试试
- redis缓存的特性就是将数据保存到内存中已达到加速的效果,所以比较消耗内存,大概10万数据量消耗2G,仅供参考
最后多说几句,如果通过此教程优化后,页面生成时间还是比较慢,那么可以从以下几点来分析了:
- 你网站的数量有多少?如果数据量巨大,那肯定会再稍微慢一点是正常的,这个数据仅供参考:2万文章以为400-600毫秒,5万文章800-1000毫秒,10万文章以上1.2-1.5秒左右。(包含文章加帖子)
- 服务器性能问题,并且请勿认为配置=性能,很多站长认为我用的8核16G服务器性能应该很强,但实际上很多小公司的8核16G的性能还比不上大公司的2核4G,主要是因为部分小厂虚标严重,且CPU比较老。所以我们推荐使用阿里、腾讯、华为、百度等大公司服务器。官网使用的是华为云2核4G5M的C6S服务器,大约1500一年,仅供参考
- 还有很重要的一点就是网站的数据来源,如果你的文章或其他数据不是通过网站正常发布的,例如:采集的、数据库导入的等,那么这种数据会极大的影响速度!要问为什么?我们就需要了解发布内容的流程逻辑了,我们在网站正常发布一篇文章,系统会有很多依赖数据会进行判断并更新写入,如果你是采集的内容,那么这些依赖数据多数都会缺失,这就会导致查询数据的时候多走弯路,从而导致加载速度变慢!我知道有些采集软件可以补充部分依赖的Meta数据,但是很多关联的依赖数据是无法写入的,举个例子:发文章系统会更新的依赖数据:该文章所有分类、标签的总文章数、总阅读数,该文章作者的热度、能获得多少积分、经验值等,文章内的图片数据查询等等、文章相关数据缓存的储存等等。当然也不是说不能采集,只是说非正常发布的内容越多,对速度影响越大!
- 海外服务器,这一点主要影响的是网络速度,毕竟是海外网络速度肯定没有国内稳定可靠,如果确实要用海外的服务器,建议首选大厂的香港、台湾













暂无评论内容