在php.ini中关闭exposephp

在php.ini中关闭exposephp,php,pci-compliance,Php,Pci Compliance,我被告知,在我的php.ini中使用expose_php=On是一个安全问题,因此不符合PCI 到目前为止,我对它的研究表明,关闭它的风险很低,基本上不会在标题中发回PHP版本,但是我想知道,在这个更改的背后是否可能会出现任何问题 我想到的潜在问题是第三方服务(支付提供商、电子邮件跟踪系统、视频流API),它们希望您用一个标题来响应,表明您正在运行一个PHP版本,可能在某个版本上运行 这是一个无缝的更改还是有可能出现问题?禁用expose\u php时,应该没有负面的副作用 它所做的只是删除X-

我被告知,在我的php.ini中使用
expose_php=On
是一个安全问题,因此不符合PCI

到目前为止,我对它的研究表明,关闭它的风险很低,基本上不会在标题中发回PHP版本,但是我想知道,在这个更改的背后是否可能会出现任何问题

我想到的潜在问题是第三方服务(支付提供商、电子邮件跟踪系统、视频流API),它们希望您用一个标题来响应,表明您正在运行一个PHP版本,可能在某个版本上运行


这是一个无缝的更改还是有可能出现问题?

禁用
expose\u php
时,应该没有负面的副作用

它所做的只是删除
X-Powered-By
标题,并停止从返回的PHP积分和图像中获取参数

任何依赖头的第三方应用程序都是不可靠的。如果需要,您可以随时伪造标题。

没错

设置
expose\u php=Off
只会阻止Web服务器发回
X-Powered-By

虽然有人可能会说,潜在的黑客可能会寻找带有安全漏洞的过时版本的PHP进行攻击,但即使标头被关闭,他们也可能会这样做。在我看来,这是一件好事,但不要指望它能提供太多的保护

在与第三方服务交互方面,他们不必关心您使用的是哪个版本的PHP。他们应该能够以与平台无关的格式(如JSON、XML等)提供内容,以便任何平台都可以使用这些服务,而不仅仅是PHP

无论如何,对于他们来说,依赖“消费者的”PHP版本是没有用的,因为头部可以很容易地关闭,甚至可能被服务器管理员操纵


因此,关闭它应该没有问题。

打开或关闭此选项绝对没有坏处

关闭它不会给你的网站增加任何安全性。 那些脚本儿童工具是如此愚蠢,以至于他们从不费心区分不同的平台


更不用说,如果你的网站是基于框架/CMS的,那么隐藏PHP的存在是没有用的。

没有任何安全威胁,但是暴露过时的PHP版本可能会让黑客尝试利用过去版本中记录良好的“漏洞”

关于第三方服务,它们是独立于平台的,不必关心我们使用的是哪个版本的PHP。如果需要,我们可以简单地设置一个空标题或类似下面的内容

header('X-Powered-By: Venu');

或者干脆把它和其他东西一起拿走。