Qunhe Network · Corporate Technology and Design Services
Call us130 6699 2285Same WeChat ID

PHP文件已上传却仍执行旧代码,OPcache应该怎样核对而不是乱重启

代码发布与OPcache更新:代码文件,已写入磁盘的版本,未必被当前请求执行;OPcache,保存编译后代码,与页面缓存不同;部署流程,配套缓存更新机制,不可依赖随意重启
代码发布与OPcache更新:关键概念与边界对照。原创知识示意,点击可查看大图。

OPcache保存编译后的PHP代码,部署后的旧行为可能与缓存检查策略、运行进程、发布路径或其他应用缓存有关。应先确认实际执行的是哪份文件,再决定失效、重载或调整部署流程,不一见旧内容就重启服务器。

用可核验版本确认执行路径

记录发布文件的路径、版本标识和实际请求到达的节点,排除上传到错误站点、软链接旧目录或多节点只更新一台。页面缓存也可能返回旧HTML而没有执行新PHP,应把静态响应与代码执行分开观察,不公开输出敏感绝对路径。

读取OPcache的真实配置

核对目标FPM环境是否启用OPcache、时间戳检查和重新验证设置。不同部署策略可能有意关闭自动检查,此时必须配套可靠的刷新机制。不能只看CLI的OPcache状态,推断网站池中缓存已经失效;它们可能不是同一个运行上下文。

代码发布与OPcache更新:确认执行版本、读取缓存策略、按范围刷新、回读所有节点
排查流程:确认执行版本 → 读取缓存策略 → 按范围刷新 → 回读所有节点。原创知识示意,点击可查看大图。

按部署范围选择更新方式

对明确文件可使用适用的失效机制,或按运维流程处理相关进程与服务。操作前确认权限和影响范围,不向公众暴露任意重置OPcache的HTTP入口。重置编译缓存也不等于清理对象缓存、CDN或页面缓存,需要按实际旧内容来源分别处理。

把验证纳入以后每次发布

刷新后请求真实端点,核对新版本行为、错误日志和关键业务路径。多节点、队列及常驻进程另有自己的更新责任,不靠一台服务器返回正常就宣布全部发布完成。保留旧版本和回退步骤,使缓存策略与代码版本始终对应。

关键区别

代码发布与OPcache更新:代码文件,已写入磁盘的版本,未必被当前请求执行;OPcache,保存编译后代码,与页面缓存不同;部署流程,配套缓存更新机制,不可依赖随意重启
代码发布与OPcache更新:关键概念与边界对照。原创知识示意,点击可查看大图。

代码文件:已写入磁盘的版本;未必被当前请求执行。

OPcache:保存编译后代码;与页面缓存不同。

部署流程:配套缓存更新机制;不可依赖随意重启。

怎样确认处理到位

所有目标执行环境均使用确认的新代码,关键业务正常,旧版本不再非预期执行,缓存刷新与回退步骤能够重复使用。

容易误判的边界

不要把公开页面旧内容全部归因于OPcache;CDN、页面缓存、错误发布路径和多节点不同步也需要排除。

References

PHP:OPcache configuration

返回网站知识,按具体问题继续阅读

Shopping Cart
Scroll to Top
Scan the QR code to make a reservation

1981 Steakhouse (Hisense Branch)

Store Introduction

Introduction to 1981 Steakhouse (Hisense Branch)

Scan the QR code to make a reservation

1981 STEAK HOUSE (Zhihui Mountain Branch)

Store Introduction

1981 STEAK HOUSE (Zhihui Mountain Branch) Introduction

Scan the QR code to make a reservation

1981 American-Style Barbecue Factory Outlet

Store Introduction

Introduction to the 1981 American-Style Barbecue Factory Store

Scan the QR code to make a reservation

1981 STEAK HOUSE (Minyuan Branch)

Store Introduction

1981 STEAK HOUSE (Minyuan Branch) Introduction

Contact Qunhe · Zheng Borui (Brian)

Contact via WeChat

Scan the QR code on your computer; on your phone, you can long-press to save the QR code,
Or copy the WeChat ID to add me as a friend.

Brian Zheng Borui's Authentic WeChat Contact QR Code

130 6699 2285 Same WeChat ID

You can also contact us via WhatsApp →