PHP 是什么?没写过代码,为什么也要关心 PHP 漏洞

WindowsMac更新

PHP 是一种用来做网站的编程语言。PHP 官方手册说,它是“一种被广泛应用的开放源代码的多用途脚本语言”,“尤其适合 web 开发”。它运行在发送网页的那台计算机上,也就是服务器上,而不是你用来看网页的手机或电脑上。本文信息截至 2026 年 10 月 23 日。

简要回答

PHP 是一种开源语言,很多网站都是用它写的。PHP 代码在网站的服务器上运行,服务器把每个页面生成好,再把结果发给你的浏览器。所以 PHP 出了漏洞,要处理的是运营网站的人,修复办法是更新服务器上的 PHP,而不是更新你的设备。

PHP 是用来做什么的?

主要用来做会变化的网页。普通的静态网页是一个固定的文件。PHP 页面则是一个小程序,在你打开它的那一刻才把页面写出来,所以它能显示你的购物车、你的账户或最新的文章。

PHP 手册说,PHP 主要用于服务端的脚本程序,并举了几个例子:收集表单数据、生成动态网页、发送和接收 Cookies。

你也可能在没看到它名字的地方遇到 PHP。WordPress 说,PHP 是构建 WordPress 所用的编程语言之一。PHP 手册还说,PHP 也可以不靠服务器和浏览器、单独在命令行里运行,适合定期执行的脚本和简单的文本处理。

“服务端运行”对网站和访客意味着什么?

意思是活儿在网站自己的计算机上干完,然后才轮到你。PHP 手册解释了它和在浏览器里运行的 JavaScript 的区别:PHP 代码是运行在服务端的,客户端能接收到运行结果,但无法得知底层代码是什么。这里的客户端就是你的浏览器。

所以当你打开一个用 PHP 做的网站时,服务器先运行 PHP,生成一个普通的网页,再把这个网页发给你。手册还说,甚至可以把 web 服务器设置成让 PHP 处理所有的 HTML 文件,这样用户就无法知道正在使用 PHP。

对访客来说,这带来两个很实际的结果:用 PHP 做的网站,你不需要装 PHP 也能用;而且你通常看不出一个网站有没有用 PHP。

为什么 PHP 的一个漏洞会影响这么多网站?

因为所有用 PHP 的网站运行的是同一套核心软件,核心里的漏洞在每个网站更新之前都是共有的。2026 年 10 月 21 日,PHP 官方公布了两个严重漏洞 CVE-2026-109618 和 CVE-2026-109619,并说有风险的是所有处理网页请求的 PHP。英国国家网络安全中心(NCSC)写道,使用任何版本 PHP 的组织都会受到影响。新加坡网络安全局(CSA)也说,这些漏洞影响所有版本的 PHP。

PHP 也常常藏在别的东西里。美国网络安全和基础设施安全局(CISA)说,PHP 常常是其他软件的组成部分,用了多少不一定能直接看出来。NCSC 也提醒组织关注那些可能内置 PHP 的设备和服务的厂商更新。WordPress 自己的升级 PHP 页面则说,正因为 PHP 如此流行,它也成了黑客的目标。

漏洞本身、严重程度和修复版本,见我们的总览PHP 漏洞 PHP2Shell 是什么。

为什么我的设备不会运行网站的 PHP?

因为 PHP 在网站所在的地方运行。浏览器向服务器要一个页面,服务器运行 PHP,返回给你的是写好的 HTML 页面。10 月 21 日的 PHP 公告点名的有风险环境,比如 PHP-FPM、Apache 的 mod_php 和 LiteSpeed,都是运行在网站服务器上的。

访问一个用旧版或未修补 PHP 的网站,并不会把那份 PHP 装到你的手机或电脑上。访客面对的是另一种风险:如果网站被人控制,它给你看的内容就可能被改掉。具体是什么样、要注意什么,见打开被黑的网站会中毒吗。

唯一的例外是你自己装过 PHP,比如为了在自己电脑上做网站或测试网站。那你手上就有一份需要更新的 PHP,和其他软件一样。

用大白话说,PHP 漏洞是什么意思?

漏洞是软件里的弱点,别人可能利用它让软件做本不该做的事。PHP 官方说,2026 年 10 月的这两个漏洞可能导致未经身份验证的远程代码执行。说白了,就是别人不用登录,就可能让服务器执行他选定的指令。国家互联网应急中心(CNCERT)的公告也说,在特定条件下,攻击者可以实现拒绝服务、敏感数据窃取和远程代码执行。

PHP 官方的答案是更新。它的发布说明写道:“There are no complete mitigations, updating is the only safe choice.”(没有完整的缓解办法,更新是唯一安全的选择。)如果你负责一个网站,第一步是查清它用的是哪个版本:如何查看网站的 PHP 版本告诉你去哪里看,并列出了修复版本。

更多问题

PHP 是病毒,或者是我电脑上的某个程序吗?

不是。PHP 是一种编程语言,也是运行这种语言的软件,不是恶意软件。它运行在托管网站的服务器上。想知道自己电脑上有没有装 PHP,可以看怎么查看电脑上有没有安装 PHP,只需要运行一条命令。

PHP 这三个字母代表什么?

PHP 手册说,PHP 是“PHP: Hypertext Preprocessor”(超文本预处理器)的缩写。缩写的第一个字母又来自缩写本身,这叫递归缩写。“预处理器”说的正是它的工作:在页面发给你的浏览器之前先处理页面。

我的网站用哪个 PHP 版本,由谁决定?

通常是你的主机商。WordPress 的升级 PHP 页面说,你的网站能用哪些 PHP 版本由主机商决定,很多主机商也允许你自己切换。在哪里看,见如何查看网站的 PHP 版本。

能看出一个网站有没有用 PHP 吗?

很多时候看不出来。PHP 手册说,服务器可以设置成让用户无法知道正在使用 PHP。如果网站是你的,主机控制面板或主机商可以告诉你版本。

PHP 用起来安全吗?

要看网站跑的是哪个版本:仍受支持的版本会得到安全修复,过了生命周期的版本不会。PHP 的支持周期怎么算,见PHP 安全吗。

来源