隐藏响应中的server和X-Powered-By

当我们用调试工具查看别人的网站时,
经常看到 X-Powered-By:PHP/7.1.8 这样的一行,
和Server:Apache/2.4.27 (Win32) OpenSSL/1.0.2l PHP/7.1.8 这样的一行,
在这些信息中经常会是我们操作及使用的语言泄露出去,
对于网站来说是不安全的,
在大多数情况下,我们需要把这两项给隐藏掉。
冯奎博客

1、隐藏X-Powered-By

修改 php.ini 文件。添加或修改 expose_php = Off

2、apache 隐藏 server

修改httpd.conf 设置
ServerTokens Prod

3、nginx 隐藏 server

修改nginx.conf 在http里面设置
server_tokens off;

修改完之后,重启 Apache(nginx 下也要重启 php-fpm)即可看到效果。
如果你用的是 ThinkPHP 框架,可能会有这样的一行:

X-Powered-By:ThinkPHP

利用上面的方法,可以将 X-Powered-By 隐藏掉,也可以直接修改 View.class.php 文件

// 将
header('X-Powered-By:ThinkPHP');
// 修改成其它的,如:
header('X-Powered-By: asp.net');

这样就可以将编程语言伪造成其他语言了

冯奎博客
请先登录后发表评论
  • latest comments
  • 总共1条评论
冯奎博客

番茄蛋饭二十五块半 :win下设置不生效,可将服务设置成系统服务模式

2019-12-13 14:42:36 回复