WordPress 之 OPcache 操作码缓存清理与配置教程

OPcache 是 PHP 层面的字节码缓存机制,和 WordPress 本身的页面缓存、对象缓存不是一回事。它会把 PHP 代码编译后的操作码缓存到内存,省去重复编译的开销,是提升PHP站点访问速度非常有效的手段。

重点:OPcache 是内存缓存,不会写入硬盘;WordPress 原生后台没有自带 OPcache 查看、重置功能。

先确认服务器是否开启 OPcache

你可以进入 WordPress 后台:工具 → 站点健康 → 信息 → 服务器
在这里能看到 OPcache 相关状态信息:

  • 操作码缓存(开启/关闭)
    ​
  • 操作码缓存内存使用量
    ​
  • 操作码缓存驻留字符串使用量
    ​
  • 操作码缓存命中率
    ​
  • 操作码缓存是否已满

命中率越高,代表加速效果越好;如果提示缓存已满,就需要调整内存大小或者清空缓存。

开启 OPcache(未启用时操作)

找到当前网站对应的  php.ini  配置文件,搜索这一行:

;zend_extension=opcache

把前面的分号  ;  删除,保存文件,重启PHP服务即可生效。

调整 OPcache 内存大小

默认  opcache.memory_consumption  一般为128M,流量大、插件主题多的 WordPress 站点很容易跑满。
同样在  php.ini  内找到该参数,根据服务器内存情况修改:

opcache.memory_consumption=256

服务器富余的话,可以设置为 256、512,单位 MB。

配套推荐参数(直接复制进php.ini)

opcache.enable=1
opcache.enable_cli=0
opcache.memory_consumption=256
opcache.interned_strings_buffer=16
opcache.max_accelerated_files=10000
opcache.max_wasted_percentage=10
opcache.revalidate_freq=60
opcache.validate_timestamps=1

 validate_timestamps=1 :会自动检测PHP文件改动,自动刷新缓存(开发调试建议打开;正式生产追求极致速度可以关闭,改代码后手动清缓存)

什么时候需要清理 OPcache?

正常运行时不需要频繁清理。
下面这些场景,清理缓存才能让修改生效:

1. 手动升级 WordPress 核心、更新主题/插件代码
​
2. 修改主题PHP文件、自定义插件源码
​
3. 关闭  opcache.validate_timestamps ,不会自动检测文件变更
​
4. OPcache内存占满、命中率下降、网站出现奇怪的旧代码报错

两种清理 OPcache 的方法

方法1:重启PHP服务(最简单、稳定,推荐生产环境)

进入服务器面板(1Panel/宝塔等),找到对应版本的PHP,点击【重启】。
OPcache全部数据保存在内存,重启PHP进程后内存直接释放,缓存一次性清空,无额外依赖,不容易出权限问题。

方法2:WordPress后台一键清理(适合不想重启PHP)

安装插件:OpCache Monitor and Reset
插件功能:
✅ 可视化查看内存占用、缓存命中率、缓存文件数量
✅ 一键 Clean OPcache 重置缓存
✅ 查看当前 OPcache 全部配置快照
✅ 监控缓存运行状态,及时发现缓存溢出

小提醒:该插件依赖PHP权限,部分面板、容器环境可能会调用失败,失败时改用方案一重启PHP。

补充避坑要点

1. OPcache 和 Redis、WP Rocket、LiteSpeed 页面缓存互相独立,清OPcache≠清页面缓存;改完代码建议两类缓存都刷新
​
2. 缓存命中率建议维持 95% 以上;长期低于90%优先加大  opcache.memory_consumption 
​
3. 内存不要盲目拉满,给系统、MySQL、Redis预留足够内存,防止服务器OOM
​
4. 若为容器化部署PHP,修改php.ini、重启PHP都要在容器内操作

© 版权声明
THE END
喜欢就支持一下吧!
点赞48赞赏 分享