WordPress网站打开速度慢怎么办:先测基线再按官方顺序排查

倪叶明

作者

更新于

WordPress网站打开速度慢,官方手册给的第一步不是装缓存插件,是看插件:停用并删除不需要的插件,再逐个停用测服务器性能。这一步不动服务器、不改代码,在后台点几下就能做,先做它。

对做出海生意的人来说,页面打开慢不只是体验问题。读者从搜索结果点进来,等几秒打不开就退回去了,你产品页写得再好,他也看不到。

  • 官方排查顺序是先插件,再内容,再硬件,再软件。
  • 缓存是官方说的最快见效手段,点了三个插件:W3 Total Cache、WP Super Cache、Cache Enabler。
  • 主题和插件数量对性能影响很大,单靠一个缓存插件解决不了。
  • 本文给一套能重复用的顺序:先测一次基线,分清是服务器慢还是前端资源慢,再一项项往下查。

本文从头到尾讲一套动作,每一步说清楚看什么、出问题怎么回查。WordPress速度优化这个主题站内另有一篇,可以对照着看。

WordPress打开慢,官方说先查哪几样

官方列的五个影响因素

WordPress官方手册把「性能 / 优化」单独列成一个章节,下面再分缓存、优化、PHP 优化三篇。优化那篇一开头就列了影响因素,包括但不限于主机环境、WordPress 配置、软件版本、图片数量和文件大小。官方还有一句:不管你跑的是高流量站,还是低价共享主机上的小博客,都该把 WordPress 和服务器调到尽可能高效。

这句话把范围说清楚了。低价共享主机上的小站也要做这件事,不是只有大站才值得花时间。图片多、插件多、版本旧,这几样恰恰是小站最容易中招的地方。

为什么第一步是插件,不是缓存

官方原话是「第一步也是最简单的一步,是看插件」。后面跟着两个动作:停用并删除不需要的插件,再逐个停用,测服务器性能。注意是「停用并删除」,光在后台点停用不算做完,停用之后不用的插件要从站上删掉。

官方还把停用和删除不需要的插件单独拎出来说了一次,说这是提升性能的重要方式。至于原因,装上的插件哪怕你忘了它存在,它也还是 WordPress 的一部分,会跟着每次页面请求跑一遍。你不需要它,它却还在消耗。

后台慢和前台慢不是一回事

WordPress 后台渲染和前台渲染走的是两条内存限制。后台那条的默认值比前台高一截,后台能用的内存比前台多。这两条限制还有大小关系,通常前面那条小于等于后面那条。

这个区别直接影响你调内存时的判断。后台都卡,你光加前台的额度没用;前台卡而后台正常,才轮到前端那条变量。具体默认值和官方示例值放在后面的数字表里,一次看全。

先测基线:慢在哪一段,用浏览器开发者工具和在线测速工具分开看

官方给的两种测法

官方给了两类工具。一类是在线网页基准测试工具,可以从不同的地点、不同的浏览器、不同的连接速度测真实性能,量的是用户那头的感觉。另一类是浏览器内置的开发者工具,Firefox 或 Chrome 都带性能测量工具,量的是这一页本身,哪些文件在请求、卡在哪一步,在同一个浏览器里就能看出来。

两种要分开用。在线工具告诉你「从外面看有多慢」,开发者工具告诉你「慢在哪个文件」。只用一种,你会知道慢了,但不知道该动哪里。

测完记三个数

先记首页从点击到完整打开的时间。再登录后台,打开文章列表,记第二个数。最后把同一个页面紧接着打开第二次,记第三个数。

三个数分开记,是因为它们指向不一样。第一个数看的是前台体验。第二个数能把「服务器整体慢」和「前台资源慢」分开:后台也慢,问题多半在服务器、数据库或者插件;后台快、前台慢,问题在前端加载的东西。第三个数看缓存有没有起作用,第二次打开如果明显快,说明缓存已经在工作。

结果对不上怎么回查

两次测出来的结果差很多,先别改站。把你自己的网络和浏览器扩展排除掉,换个时间段再测一次,再换一个在线工具复测。同一个页面在三个不同工具上差出一个量级,基本可以判断问题不在你的站上。

三次测下来的数都慢,才算真的慢。这时候才开始往下走。

分步排查:按官方顺序从插件查到 PHP 版本

  1. 停用并删除不需要的插件

    进后台「插件」页,先把已经不用的删掉。然后是定位:一次只停用一个是稳妥的做法,每停一个,用同一个测速工具测一次,记下结果。停用之后变快,那个插件就是嫌疑对象。

    确认是它之后有三条路,官方给的:查这个插件的文档,到它自己的支持论坛提问,或者换一个功能相近的替代插件。别删完了什么都不知道,下次换个名字装回来还是同样的问题。

  2. 清图片

    官方给的四个问题:有没有多余的图,能不能用文字替掉一部分图,格式和压缩方式选对没有,要不要换成 WebP 这种体积更小的现代格式。一条条对着自己的页面过。

    图片这一块删掉就直接变轻,因为请求数和文件体积是实打实降下来的。清完再测一次,这个动作的效果当场就看得出来。

  3. 减少一个页面要加载的文件数

    官方问的是:一个普通页面要加载多少个文件,这个数量能不能减。仍然用 HTTP/1.x 的话,官方建议把多个文件合并成一个优化文件。CSS 和 JavaScript 都建议压缩。

    回查方法很直接:合并和压缩之后,页面打开如果出样式错乱或者功能失灵,就把那一段撤回,一次只动一类文件,出问题好定位。

  4. 上缓存

    官方说这是最快见效的一步,站点正在被打爆就立刻装。三个插件任选:W3 Total Cache、WP Super Cache、Cache Enabler。它们做的事都一样,把文章和页面缓存成静态文件,请求进来直接给文件,不用每次重新生成。

    装 W3TC 之前有个前置动作容易被跳过:先停用并卸载你正在用的其他缓存插件。装好启用之后,页面缓存会自动以 basic 模式跑起来,不用先去调参数。

    回查:动态内容多的页面,比如购物车、会员区、带个性化推荐的列表,缓存配置会复杂很多。这类页面配完之后一定用没登录的浏览器打开看一遍,看显示的是不是该显示的内容。

  5. 升级硬件

    官方说加 CPU 和内存,或者换到用 SSD、NVMe 的主机,差别会很大。这是花钱的一步,所以放在插件和内容后面,前面能压下去的就不急着花钱。

    要换主机的话,配置怎么选可以看这篇:国外VPS主机推荐。先知道自己卡在 CPU、内存还是磁盘,再拿这个去比配置,比按价格挑靠谱。

  6. 升级软件版本

    操作系统、Web 服务器、数据库、PHP,四样都该是最新的。官方说确保这四样都跑最新版很关键。

    回查重点是 PHP:官方专门提醒升级 PHP 要格外小心,在老版本 PHP 上建起来的站,可能因为插件和主题不兼容出问题。正确做法是先在非生产环境测兼容性,各环境的 PHP 版本可以分开配,别直接在生产站上换。

  7. 把 DNS 挪出去

    官方明确说不要在 WordPress 服务器上跑 DNS。用商业 DNS 服务,或者用域名注册商提供的免费服务。DNS 放到外部服务器上,主 Web 服务器的负载会降下来。

    这一步改的是域名解析,改之前把原来的解析记录抄下来,改完等生效,再看站点能不能正常访问。

  8. 给服务器加 Opcache

    官方说给服务器加 Opcache,IIS 上用 WinCache,能把 PHP 性能提升多倍。原理是把编译过的 PHP 脚本留在内存里,下次不用重新编译。

    回查:装完之后打开后台看有没有报错,再看 PHP 的错误日志有没有相关提示。这一步在共享主机上你多半动不了,得主机商那边开。

用面板落地:改 PHP 版本和内存限制

如果你用的是宝塔面板这类服务器管理面板,PHP 版本切换和内存限制修改都在面板里有对应的入口,不用手改配置文件。面板怎么装、装完在哪找这些设置,这篇写全了:宝塔面板安装教程。

改之前先记下现在的值,改完立刻测一次。同一个页面,改之前和改之后的数放一起,这一项有没有用当场就知道。没变或者变慢了,改回去。

做这件事要用的几个数:内存、PHP 版本、缓存插件的公开成绩

项目 数值 说明
WordPress 前端内存默认 40 MB,多站点 64 MB 变量是 WP_MEMORY_LIMIT,官方示例设 128M
WordPress 后台内存默认 256 MB 变量是 WP_MAX_MEMORY_LIMIT,官方示例设 256M
两条内存限制的关系 WP_MEMORY_LIMIT 小于等于 WP_MAX_MEMORY_LIMIT 官方写的是通常如此
WordPress 下载页推荐 PHP 8.3 或更高,MySQL 8.0 或 MariaDB 10.11 或更高 装的时候按你看到的那个页面为准
官方手册写作时的 PHP 支持状态 7.4 官方支持,8.0 和 8.1 有例外兼容,8.2 是 beta 支持 可能时用 7.4 或更高
缓存插件对静态页面的提升 数百倍 前提是页面相当静态
W3TC 完全配置后 整体性能至少 10 倍 官方插件页说法,以 WebPagetest 得 A 或 PageSpeed 显著提升为标志
W3TC 压缩 HTML、CSS、JS 最多省 80% 带宽 官方插件页
W3TC Pro 退款 30 天 官方插件页

表里的数是官方页面上公开写出来的,不是针对你某一个站的承诺。你的站能提升多少,只能看优化前后两次测量差了多少。表里那两行 PHP 版本的时间点不一样,手册那行是写作时的状态,下载页那行更新,装的时候别混着看。

五个常见误区,中招了会白忙

只装缓存插件就以为完事

装缓存不等于性能就到位了。官方说主题对站点性能影响巨大,插件数量和它们的性能也会有巨大影响。轻量快速的主题,比堆满图形的低效主题高效得多。这两块开销缓存压不下去。

在 WordPress 服务器上自建 DNS

DNS 放在 WordPress 服务器上跑,等于给这台本来就在干活的机器加一份活。官方明确说不推荐,改用商业 DNS 服务或者域名注册商的免费服务。

只调高 PHP 脚本超时

脚本超时调得再高,请求也可能在更前面就被砍掉。官方说得很直白:Web 服务器(比如 Apache)的超时如果比 PHP 脚本超时低,请求还是会被 Web 服务器杀掉,PHP 那个设置等于没设。两个值要互相匹配。

post_max_size 设得比 upload_max_filesize 小

这两项有硬性的先后关系。官方说 post_max_size 必须大于或等于 upload_max_filesize,超过 post_max_size 的请求 PHP 直接不处理。上传大文件失败,有时候问题就出在这一对值上,跟 PHP 版本和主机都没关系。

以为缓存坏了会丢数据

缓存是可以重新生成的,它不是唯一的一份数据。官方说缓存数据应该始终可替换、可重新生成,缓存损坏时应用应该继续运行,不丢数据,只是重新生成的那段时间可能出现一些性能问题。

排查过程中撞上故障,别急着整个站恢复。插件停用之后后台变卡,可以看这篇:插件导致后台变卡。如果是页面直接抛出 500,看这篇:WordPress 500错误。当时看到什么记下来,不然恢复完就说不清了。

共享主机上改不动怎么办:超时和上传限制常按服务器配置

共享主机上最相关的三块

官方说共享主机这个场景最相关的是三块:缓存、WordPress 性能、内容卸载。缓存排在最前面,因为它不依赖你改服务器配置,装个插件就能见效。

WordPress官方性能优化手册页共享主机缓存性能内容卸载三块说明
官网说明截图:共享主机上最相关的三块,缓存排在最前面。

所以别一上来就去改 php.ini。共享主机上你多半没这个权限,先做缓存和内容这两块,能拿到的收益本来就大。

限制改不了就去问主机商

超时值和上传限制,官方说在共享主机上通常是服务器级别设置的,你可能改不了,或者只能改到某个值以下。官方给的路径是直接联系主机商的技术支持,问能不能按你的需要调整。

问的时候把要改的项和期望值写清楚,别只说「我的站很慢」。技术支持看的是具体参数,不是感觉。

什么时候该换主机

官方有一句:付更多钱买更高服务等级,可能很有效。没说多少钱,也没说多久见效。这句话只能当方向,不能当预算表。

真要考虑换,先把前面几步走完,把两次基线留下来。你还不知道慢在哪的时候就换主机,很可能换完还是不解决问题,只是把账单抬高了。

用 AI 帮哪几步、哪几步必须自己动手

AI 能帮的三步

  1. 把测速工具导出的报告贴给 AI,让它按服务器响应、前端资源、图片、缓存四类归纳问题,每一类对应回官方优化页的排查顺序。它给的是分类,不是结论。
  2. 让它按你当前的主机类型(共享、托管、VPS)生成一份排查清单,每一步写清楚该看哪个指标。清单拿来当核对表用,不是拿来直接执行。
  3. 让它批量生成图片压缩清单和图片的 alt 文案草稿,配合 WebP 这一类的现代格式建议一起用。清单出来之后,哪些图能删、哪些能用文字替掉,还是你自己定。

三条能直接照抄的提示词

下面三条是本文给的示例,不是官方模板,按你自己的情况改。

「下面是一份 PageSpeed 报告,请按服务器响应时间、前端资源、图片、缓存四类归纳问题,每类给出对应 WordPress 官方优化页的排查步骤,不要编造数字。」

「我的主机是共享主机,WordPress 站点打开慢。请按官方优化页的顺序,先插件、再内容、再硬件、再软件,列一份排查清单,每步写清楚看哪个指标、什么结果算通过。」

「这是我的图片目录清单,请生成一份压缩清单:每张图建议格式、目标体积、alt 文案草稿,并标出哪些图可以删或者用文字替代。」

人必须亲手做的三件事

  1. 在 WordPress 后台「插件」页逐个停用插件,每停一个用浏览器开发者工具或者在线测速工具测一次,记下哪个插件停用后变快,再决定删还是留。
  2. 在主机控制面板或 php.ini 里确认并填写 memory_limit、upload_max_filesize、post_max_size 三项,保证 post_max_size 大于等于 upload_max_filesize。
  3. 在测速工具里跑优化前后两次基线,把两次结果记下来存档。以后所有「到底有没有变快」的判断,都以这两次为准。

配置片段可以让 AI 起草,但必须人工审核

缓存头这类配置片段,包括 Cache-Control、Expires 这些,可以让 AI 先起草一版,但上线前必须有人看一遍每一项是什么意思,再决定要不要放上去。放上去之后马上打开站点看有没有异常,别等到晚上才发现全站样式没了。

CDN 这一层怎么配,站内这篇写的是具体操作:WordPress CDN配置。CDN 管的是静态资源从离用户更近的地方出来,跟前面说的服务器端优化是两件事,别指望它替代。

一轮优化跑完,动过的插件、改过的参数、两次基线的数,记在一份文件里。猎者出海的AI Agent 有一块功能是上线运营阶段每周给一张改稿单,写清楚先改哪几篇、改什么、哪篇先动,靠的就是这类数据。

常见问题

站点现在就很慢,最快的一步做什么?

官方给的答案是立刻装缓存插件,W3 Total Cache、WP Super Cache 或 Cache Enabler 三个都行。它把文章和页面缓存成静态文件,是见效最快的一步。装之前先把已经在用的其他缓存插件停用卸载掉。

缓存插件到底能带来多大提升?

官方在缓存那一页给过一个量级,前提是页面相当静态。动态内容多的页面配置起来更复杂,你能拿到多少,只能看你自己的两次测量。

我的页面动态内容很多,缓存怎么配?

官方说这种情况配置缓存会更复杂,没有给固定参数。先把页面按静态和动态分开,静态的先开缓存跑起来,动态的部分查插件文档。

对象缓存能用哪些引擎?

官方列的是 Redis、Memcached、APC 和文件系统。选择标准只有一条,取数据要比重新生成数据更快。具体用哪个,看你这台机器上装了什么、有没有现成的。

共享主机的限制改不了,对速度还有可做的吗?

有。官方说共享主机上最相关的是缓存、WordPress 性能和内容卸载这三块,这三块都不需要你改服务器级参数。超时和上传限制这类,联系主机商技术支持问能不能调。

怎么查我的 PHP 版本和 WordPress 兼不兼容?

官方有一页叫 PHP Compatibility and WordPress Versions,先生到那页对一下版本。另外还有一条 WP-CLI 命令可以做通用兼容检查,官方自己说它不是 100% 准确,所以查完还是要在非生产环境实际跑一遍。

速度这件事没有一次做完的说法。插件加一个、图片上几张、主机换一台,任何一个动作过后都值得再测一次。把每一次的基线留下来,下次觉得慢的时候,你手上至少有一份能比的数据。猎者出海的AI Agent 能接的是后面的活,按数据出改稿单,动手的还是人。

发表评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注