WordPress静态化加速:WordPress慢成龟速?试
前置准备
开始 WordPress 静态化加速 之前,先确认手头有这些条件:
- 一个正常运行的 WordPress 站点(虚拟主机或 VPS 均可)
- 能登录 WordPress 后台(管理员账号)
- 如果是服务器端方案,需要 SSH 权限或宝塔面板可视化操作
小提示:如果你用的是宝塔面板,两种方案都能用,但插件方式对新手更友好。
分步操作
方案一:WP Super Cache 插件(适合零基础)
这是最稳妥的 WordPress 静态化加速 方法,无需改动服务器配置。
- 安装插件
登录 WordPress 后台 → 插件 → 安装插件 → 搜索 WP Super Cache → 立即安装 → 启用。
- 开启缓存
进入 设置 → WP Super Cache → 点击 Easy 标签 → 勾选 Caching On (Recommended) → 点击 更新状态。
✅ 看到绿色提示“Caching enabled”表示成功。
- 启用预缓存模式(可选但推荐)
切换到 Advanced 标签 → 找到 Preload mode → 勾选 Preload mode (supercache) → 保存。
这样新访客也能立即看到静态页面。
- 开启 Mod_Rewrite 缓存(Apache 环境专用)
在 Advanced 标签的 Miscellaneous 区域 → 勾选 Use mod_rewrite to serve cache files → 更新。
如果服务器是 Nginx,请跳过这一步。
- 验证缓存
打开网站首页,右键 → 查看页面源代码,底部如果出现类似:
说明 WordPress 静态化加速 已生效。
---
方案二:Nginx 服务器端静态缓存(更彻底)
适合有服务器权限、追求极致性能的用户。
以下配置在宝塔面板中同样适用。
- 编辑 Nginx 配置文件
宝塔用户:网站 → 选择域名 → 设置 → 配置文件。
在 server 块内添加以下内容:
set $skip_cache 0;
if ($query_string != "") { set $skip_cache 1; }
if ($request_uri ~* "(/wp-admin/|/xmlrpc.php|/wp-.*.php|/feed/|index.php|sitemap(_index)?.xml)") { set $skip_cache 1; }
if ($http_cookie ~* "comment_author|wordpress_[a-f0-9]+|wp-postpass|wordpress_no_cache|wordpress_logged_in") { set $skip_cache 1; }
location ~ /purge(/.*) {
allow 127.0.0.1;
deny all;
fastcgi_cache_purge WORDPRESS "$scheme$request_method$host$1";
}
location ~ \.php$ {
fastcgi_cache WORDPRESS;
fastcgi_cache_valid 200 301 302 30m;
fastcgi_cache_use_stale error timeout invalid_header http_500;
fastcgi_cache_key "$scheme$request_method$host$request_uri";
fastcgi_cache_bypass $skip_cache;
fastcgi_no_cache $skip_cache;
add_header X-Cache $upstream_cache_status;
}
- 定义缓存路径(在 http 块,一般在文件开头)
宝塔默认已有,如果不存在,手动添加:
fastcgi_cache_path /tmp/nginx-cache levels=1:2 keys_zone=WORDPRESS:100m inactive=60m use_temp_path=off;- 重载配置
宝塔面板点击 重载配置,或 SSH 执行:
nginx -s reload- 验证
使用浏览器开发者工具(F12)→ Network 标签 → 刷新页面 → 找到一个 .php 请求,查看 Response Headers:
- 首次访问:
X-Cache: MISS - 再次刷新:
X-Cache: HIT
✅ 出现 HIT 说明 WordPress 静态化加速 成功。
避坑指南
- 不要同时启用多个缓存插件:WP Super Cache 和 W3 Total Cache 一起开会导致页面错乱。
- 登录状态看不到静态缓存:管理员登录时默认不走缓存。请用无痕窗口或退出登录测试。
- 动态内容问题:评论、购物车等需要异步加载。WP Super Cache 的 Advanced 标签下开启 Dynamic cached pages(动态缓存)可解决。
- Nginx 配置后网站打不开:检查 fastcgi_cache_path 是否已定义,且路径目录是否存在(
mkdir -p /tmp/nginx-cache)。
高频问题解答
Q:静态化后评论提交后页面不刷新?
A:在 WP Super Cache 高级设置中勾选 Clear all cache when a comment is posted,这样每次有新评论会自动清除相关页面缓存。
Q:缓存文件占空间太多怎么办?
A:插件方案会自动清理过期文件;Nginx 方案中设置了 inactive=60m,超过60分钟未访问的文件会被删除。也可以手动执行 rm -rf /tmp/nginx-cache/* 清空。
Q:我是 Nginx 环境,用插件还是 Nginx 缓存好?
A:追求简单选插件,追求极限性能选 Nginx 缓存。两者可以共存(插件用于生成 HTML,Nginx 用于直接返回),但配置复杂,新手建议二选一。
效果验证
- 插件方式:查看页面底部注释,或使用 GTmetrix 测试加载时间,对比开启前后。
- Nginx 方式:检查响应头
X-Cache: HIT(数值为 HIT 代表命中缓存)。 - 通用验证:打开网站首页,反复刷新,观察服务器负载(
top命令)是否明显下降。
如果你正在处理 WordPress 静态化加速,建议先按本文步骤完整执行,再根据自己的环境做微调;
遇到异常时优先回看避坑和高频问题部分。