共计 1419 个字符,预计需要花费 4 分钟才能阅读完成。
通常,大多数默认设置安装的 web 服务器存在信息泄露,这其中之一就是 PHP。PHP 是如今流行的服务端 html 嵌入式语言(之一?)。在如今这个充满挑战的时代,有许多攻击者会尝试发现你服务端的漏洞。因此,我会简单描述如何在 Linux 服务器中隐藏 PHP 信息。
默认上 expose_php 默认是开的。关闭“expose_php”参数可以使 php 隐藏它的版本信息。
[root@CentOS66 ~]# vi /etc/php.ini
在你的 php.ini, 定位到含有 expose_php 的那行把 On 设成 Off:
expose_php =Off
在此之前,web 服务器头看上去就像这样:
[root@centos66 ~]# curl -I http://www.ehowstuff.com/
HTTP/1.1200 OK
Server: nginx
Content-Type: text/html; charset=UTF-8
Vary:Accept-Encoding
X-Powered-By: PHP/5.3.3
X-Pingback: http://www.ehowstuff.com/xmlrpc.php
Date:Wed,11Feb201514:10:43 GMT
X-Page-Speed:1.9.32.2-4321
Cache-Control: max-age=0,no-cache
更改并重启 Web 服务后,php 就不会在 web 服务头中显示版本了:
HTTP/1.1200 OK
Server: nginx
Content-Type: text/html; charset=UTF-8
Vary:Accept-Encoding
X-Powered-By: PHP/5.3.3
X-Pingback: http://www.ehowstuff.com/xmlrpc.php
Date:Wed,11Feb201514:10:43 GMT
X-Page-Speed:1.9.32.2-4321
Cache-Control: max-age=0,no-cache
LCTT 译注:除了 PHP 的版本之外,Web 服务器也会默认泄露版本号。如果使用 Apache 服务器,请参照此文章关闭 Apache 版本显示;如果使用 Nginx 服务器,请在 http 段内加入server_tokens off;
配置。以上修改请记得重启相关服务。
CentOS 6.3 安装 LNMP (PHP 5.4,MyySQL5.6) http://www.linuxidc.com/Linux/2013-04/82069.htm
在部署 LNMP 的时候遇到 Nginx 启动失败的 2 个问题 http://www.linuxidc.com/Linux/2013-03/81120.htm
Ubuntu 安装 Nginx php5-fpm MySQL(LNMP 环境搭建) http://www.linuxidc.com/Linux/2012-10/72458.htm
《细说 PHP》高清扫描 PDF+ 光盘源码 + 全套教学视频 http://www.linuxidc.com/Linux/2014-03/97536.htm
CentOS 6 中配置 PHP 的 LNMP 的开发环境 http://www.linuxidc.com/Linux/2013-12/93869.htm
PHP 的详细介绍:请点这里
PHP 的下载地址:请点这里
本文永久更新链接地址:http://www.linuxidc.com/Linux/2015-04/115621.htm