X-Powered-By 详解和操作

suiyuankj 2019-4-16 技术资讯 168 0 0

在我们浏览网站的时候都需要请求服务器很多信息,在一些专业的开发人员或者是一些想动小心思的人,在浏览网站的时候会去留意网站的http响应头部信息,其中含有X-Powered-By:XXXX信息。

这个信息是站点服务器信息与程序信息及版本,如果把这个信息暴露出去对站点会有不安全的威胁。我们可以通过配置服务器的技术手段达到隐藏或者修改头信息的方法来阻止这些信息的暴露。

X-Powered-By

怎么获得以上信息,我给介绍几个方法:

1、通过站长工具可以获得直观的显示;

2、在浏览器点击鼠标右键,检查,或者按着F12(具体看浏览器的配置)

修改头部信息

每个服务器都有自己的标识,甚至是版本号!这些信息如果暴露出去,服务器就容易被攻击,严重的甚至导致站点数据丢失。既然它是程序输出,我们只要找到输出的地方就能修改,下面我介绍一下php的修改。

在php程序中,默认会输出header信息:
(Status-Line) HTTP/1.1 200 OK
Date Wed, 23 Feb 2011 02:30:46 GMT
Server Apache/2.2.13 (Win32)
X-Powered-By: PHP/5.2.3
Content-Length 30
Keep-Alive timeout=5, max=100
Connection Keep-Alive
Content-Type text/html

要避免输出以上版本信息,可以修改php.ini 的expose_php把默认的On改成Off即可。

隐藏和伪装Apache的版本,隐藏php头部版本的话,可以参考如下的方法。

1,在Apache 的http.conf中添加:
  ServerSignature Off
ServerTokens Prod

其中,ServerSignature Off告诉Apache在错误页(HTTP Status  404之类)不显示服务器版本信息,但此选项不影响可正常访问的页面(HTTP Status 200之类)。正常访问网页的Server  Header里面依然有服务器版本信息。

ServerTokens Prod告诉Apache在服务器头信息中(Server Header)中只返回Apache,不返回服务器操作系统与Apache的版本信息。

2,隐藏php头部版本php.ini
  expose_php = Off
隐藏PHP程序头部发出的:X-Powered-By: PHP/5.2.4类似的信息

在php.ini文件中设置:
  expose_php = Off
可以避免输出:X-Powered-By: PHP/5.2.4 这样的版本信息。

最后

任何服务器的头信息都能修改,只不过修改的方式不一样,比如PHP,Apache,Nginx等。有一次在网上看到有人说如果浏览网站时,站点的文件时php后缀的就一定是php程序,其实这是错误的,php后缀的文件不一定是PHP文件,PHP程序不一定是php后缀。

转载请注明来自穗源博客,本文标题:《X-Powered-By 详解和操作》

喜欢 (0) 发布评论
发表评论


Top