多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
有时候,我们用调试工具查看别人的网站时,经常看到 X-Powered-By:PHP/7.1.8 这样的一行和 Server:Apache/2.4.27 (Win32) OpenSSL/1.0.2l PHP/7.1.8 这样的一行。 如:用 chrome 的调试工具中的 network 就可以查看: ![](https://img2018.cnblogs.com/blog/844191/201907/844191-20190714011408463-867313846.png) 这时候,我们就可以判断当前网站是在 Windows 系统, Apache服务下,编程语言为 php。这样就暴露了很多信息,对于网站来说是不安全的。在大多数情况下,需要把这两项给隐藏掉。 ## 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)即可看到效果。如: ![](https://img2018.cnblogs.com/blog/844191/201907/844191-20190714011445423-1527934169.png) 如果你用的是 ThinkPHP 框架,可能会有这样的一行: ~~~ X-Powered-By:ThinkPHP ~~~ 利用上面的方法,可以将 X-Powered-By 隐藏掉,也可以直接修改** View.class.php **文件 ~~~ // 将 header('X-Powered-By:ThinkPHP'); // 修改成其它的,如: header('X-Powered-By: asp.net'); ~~~ 可以误导别人以为是 .net 开发的