提升WordPress速度的实用技巧大揭秘!

我使用的是腾讯云的1核CPU和1GB内存,系统为Linux,搭载wdcp面板,安装了WordPress 4.1版本,以及两个插件,分别是Google 1.5版本(作者Bruno Xu)和WP User Avatar 1.9.18版本(作者flippercode)。然而,网站运行起来依然很慢,始终感受不到流畅的体验。我的demo网址是http://to.deyizan.com。希望愿意提供进一步帮助的朋友,可以私信我,我会提供admin权限。谢谢!

我浏览了一下评论,发现大多数建议还是比较传统。

由于我无法打开你提供的链接,我将按照常规的方式来进行讨论。

首先,建议将WordPress升级至最新版本,同时禁用一些在国内不常用的功能。

例如,谷歌字体、Emoji、Auto OEmbed、Trackbacks等。

其次,尽量将PHP版本升级到WordPress支持的最高版本。

确保PHP安装了Opcache扩展。

OPcache通过将PHP脚本预编译的字节码存储在共享内存中,从而提升PHP的性能。预编译字节码的存储能节省每次加载和解析PHP脚本时的开销——这在百度百科上有提到。

务必开启缓存(即让wp_cache发挥作用)。

常见的缓存解决方案有Redis或Memcached。

这样做的原因在于,WordPress为了简化开发者的工作,提供的基础方法通常会比较消耗资源。例如,获取一篇文章列表,常规情况下可以用一句SQL语句完成,但在WordPress中却是查找对应的文章后,整行返回。post表里不存储特色图片,如果需要展示特色图,就得从postmeta表里通过ID查找。若自定义了其他值,比如文章展示次数,情况亦是如此。这样下来,查询一个列表时,40句SQL的情况并不罕见。

优化网站时,通常最复杂的环节就是数据库与网站之间的数据交互,因此减少SQL查询次数,甚至完全避免它,才是最佳选择。

WordPress对此问题早有考虑,基本上大部分性能消耗的方法都进行了缓存处理。因此,开启缓存对于提升性能至关重要。

(有些不太靠谱的插件根本不提供方法,都是自行执行SQL查询,且无法存储。因此,使用插件时尽量选择安装次数较多的。)

其次,可以考虑使用基于页面的缓存插件。

例如,WP Super Cache插件。

如果条件允许,使用CDN,但云存储需谨慎选择。

如果没有备案,国内的CDN是无法使用的。我过去使用过阿里云的CDN,因为其便捷性,只需配置域名解析即可生效,无需安装插件。

关于为何不推荐使用云存储,CDN可以解决访问速度的问题,而剩下的问题则是存储空间和上传速度。如果你的网站只是一个小博客或公司官网,其实并不需要云存储。

目前,普通云服务器提供的硬盘容量一般为40GB。为了优化网站性能,图片通常需要压缩到300KB以下,这样的话,40GB的空间完全足够。

云存储是按量计费的,虽然价格可能很便宜,但长期来看,购买一个存储盘会更划算。

最重要的是,如果有一天你不再使用云存储,撤回数据的过程将非常麻烦。

不过,若日后需要使用,云存储的接入相对简单。

因此,在决定之前最好进行充分评估,建议优先考虑CDN。

确保JS和CSS进行压缩,但不必合并。

之前推荐合并的原因是,因为HTTP 1.1虽然允许复用TCP连接,但在同一连接中,所有数据通信是按顺序进行的。服务器必须处理完一个请求,才能继续下一个请求。如果前面的处理速度慢,后面的请求就会排队,造成“队头堵塞”。因此,过去的性能优化常鼓励将JS和CSS合并,以尽量减少文件加载次数。

然而,HTTP 2.0普遍支持多路复用,允许在一个连接中并行处理多个请求,因此现在反而推荐拆分文件,优先加载核心文件,并确保进行压缩和缓存。

尽量减少图片的体积。

在上传图片之前,最好进行压缩,选择体积更小的图片格式,如WebP或JPEG。

TinyPNG – 智能压缩WebP、PNG和JPEG图片是一个相对知名的图片压缩网站,此外它还提供WordPress插件,每月可免费压缩500张图片。

建议安装PageSpeed模块(效果显著)。

PageSpeed是由谷歌主导的前端自动优化项目,能自动实施多项优化,显著提升前端性能,特别适合WordPress使用。

此模块能解决https://pagespeed.web.dev/?utm_source=psi&utm_medium=redirect检测中提出的绝大部分建议。

其常用功能包括:

  • 将HTML页面链接转换为小写
  • 根据响应头中的内容安全策略进行优化调整
  • 重写CSS文件,以优先加载渲染页面所需的CSS规则
  • 简化CSS文件
  • 压缩空白过滤器
  • 预解析DNS查询
  • JavaScript缩小机制
  • 延迟加载图片
  • 懒加载技术
  • 将图片转换为WebP格式

如果服务器使用Nginx,还可以启用fastcgi_cache。

fastcgi_cache用于缓存用户请求,当用户下次访问相同内容时,直接返回缓存结果,避免Nginx再次向上游请求,从而大幅提升服务性能。如果服务是静态可缓存的,使用此模块能够显著缩短用户请求时间,同时节省服务器资源,极大提升服务的QPS。


如果上述优化措施都落实了,效果会如何呢?

这是我在香港的一个2核2GB服务器上运行的Demo站(非大陆用户可能会受到防火墙的限制,尽量使用正常网络访问)。

开启缓存后,首次访问仅需4次查询,刷新时则为0次。

参考文章:wordpress必要插件-你不可错过的wordpress插件推荐

若不开启缓存(以下截图是在本地环境运行的,耗时不具备参考性)

此时需要进行163次查询……

参考文章:小白必看!WordPress博客系统安装教程大揭秘

关于静态文件,第一次访问加载正常,之后的请求则全部走缓存。

参考文章:wordpress主题使用教程-如何有效地使用wordpress主题进行建站

因此,即使是香港的服务器,访问速度依然相当可观。

——————

其他信息:

我收集了一些最新的服务器优惠,想要搬家或续费的朋友可以来看看。

https://xxoo.press/

来源:知乎
原文标题:WordPress太慢了有什么办法解决吗? – 白橘猫人 的回答
声明:
文章来自网络收集后经过ai改写发布,如不小心侵犯了您的权益,请联系本站删除,给您带来困扰,深表歉意!

本文标题:提升WordPress速度的实用技巧大揭秘!
网址:https://www.wpjiguang.cn/archives/47345.html



本站所有文章由wordpress极光ai post插件通过chatgpt写作修改后发布,并不代表本站的观点;如果无意间侵犯了你的权益,请联系我们进行删除处理。
如需转载,请务必注明文章来源和链接,谢谢您的支持与鼓励!