修复由谁来装
在虚拟主机、托管 WordPress 和大多数代理商套餐上,PHP 从来不是你自己装的。服务商负责编译,同时并存多个版本,由控制面板决定你的站点用哪一个。所以 CVE-2026-109618 和 CVE-2026-109619 的修复要分两步才能落到你身上。
- 服务商安装已打补丁的构建(8.5.12、8.4.27、8.3.36、8.2.35,旧分支则是服务商自己的 backport)。
- 你的站点运行在其中某个已打补丁的构建上。
第 1 步是服务商的事。第 2 步往往要你自己来。如果站点固定在 PHP 7.4 或 8.0,而服务商没有这个分支的修复构建,那么在你切换版本之前,什么都不会被修复。
查看站点运行的版本
控制面板会按域名显示版本,WordPress 在 工具 › 站点健康 › 信息 › 服务器 里显示。把完整版本号贴到 版本检查 里。关键看第二个点后面的数字,8.3.36 已修复,8.3.30 没有。
自己编译 PHP 的服务商有时保留上游版本号,再加一个后缀,所以看起来旧的版本号也可能已经包含修复。拿不准就去问(见下文)。
主流面板发布了什么
大多数虚拟主机服务商用的是少数几种控制面板之一,服务商安装的 PHP 通常由面板厂商编译。
| 面板 | 厂商称 |
|---|---|
| cPanel (EasyApache 4) | 8.2 到 8.5 有修复构建,7.4、8.0 和 8.1 有 backport。详情 |
| CloudLinux alt-php(cPanel "Select PHP Version") | 构建正在准备中。详情 |
| Plesk | Linux 上 8.2 到 8.4 已修复,其余版本发布后陆续列出。详情 |
| DirectAdmin | current 和 stable 渠道有新构建。详情 |
面板厂商出了修复构建,不代表你的服务器上已经有了。服务商按自己的节奏推送面板更新。
服务商怎么说
我们查过的每家服务商都列在 服务商页面 上,附引述和日期。很多家还什么都没发布。没有发声说明不了是否已经装上修复,所以要去问。
如果你用的是 PHP 7.4、8.0 或 8.1
上游 PHP 对这几个分支只发布了源码补丁,没有发布正式版本。有些面板编译了它们(cPanel 编译了),很多服务商不会提供。长期的解决办法是换到仍受支持的分支。我们推荐 PHP 8.4,它支持到 2028 年底,服务商普遍提供。
切换前先做备份。服务商提供预发布副本的话,先在副本上切换。站点在跨版本升级后出问题,最常见的原因是旧插件和旧主题。
去问服务商
问题越具体,客服回复越快。把下面这段复制到工单里,填好方括号。
Hello,
Regarding the PHP security fixes released on 21 October 2026
(CVE-2026-109618 and CVE-2026-109619, "PHP2Shell"):
1. My site [domain] currently runs PHP [version]. Does that build include
the fixes for both CVEs?
2. If not, when will a fixed build be installed, and which PHP versions on
my plan are already fixed?
3. Have the PHP workers serving my site been restarted since the update?
Thank you.
第 3 个问题不要删。在为你的站点提供服务的 PHP 进程重启之前,打过补丁的包不会起任何作用。见 打补丁之后。
今天能做的事
不是修复
厂商称,Cloudflare 和部分服务商的防火墙规则能拦截已知的攻击模式。不管前面有什么规则,PHP 本身仍然有漏洞。在打过补丁的构建运行起来之前,只把规则当作临时掩护。
- 如果面板提供已修复的版本,切换过去。
- 更新 WordPress 核心、插件和主题,删掉不再使用的。
- 如果在日志或文件里发现任何异常,修改管理员密码和应用密码。
- 如果怀疑站点已经被攻击,按 排查指南 处理。
最后审阅:2026年10月22日