OS:CentOS release 6.9 (Final)

  任务:隐藏Nginx、PHP版本号

[root@sky9890 html]# curl  -I  101.132.79.69/

HTTP/1.1 200 OK

Server: nginx/1.10.3

Date: Mon, 16 Apr 2018 03:26:32 GMT

Content-Type: text/html

Connection: keep-alive

X-Powered-By: PHP/5.3.27

 

   隐藏Nginx版本号:

nginx配置文件nginx.conf,http{...}中加入以下代码

http {

    server_tokens off;

}

 

[root@sky9890 conf]# curl -I 101.132.79.69 

HTTP/1.1 200 OK

Server: nginx    #隐藏了版本号

Date: Mon, 16 Apr 2018 03:31:17 GMT

Content-Type: text/html

Connection: keep-alive

X-Powered-By: PHP/5.3.27

 

php中隐藏版本号的方法:

php配置文件php.ini,修改如下:

[root@sky9890 lib]# vi /usr/local/php/lib/php.ini

expose_php = On  #expose_php = Off

[root@sky9890 /]# killall php-fpm 

[root@sky9890 /]# /usr/local/php/sbin/php-fpm   #重新启动此服务


[root@sky9890 conf]# curl  -I 101.132.79.69 

HTTP/1.1 200 OK

Server: nginx

Date: Mon, 16 Apr 2018 03:31:17 GMT

Content-Type: text/html

Connection: keep-alive

#没有显示php版本信息了

----------------------------------------

执行sbin目录下的php-fpm可执行文件可以启动PHP-FPM,但这种方式比较麻烦。

PHP在源码包中提供了service方式管理PHP-FPM的shell脚本,下面将脚本文件复制到/etc/init.d目录中,并通过chkconfig实现开机启动,

步骤如下:

[root@sky9890 php-5.3.27]# pwd
/tools/php-5.3.27

[root@sky9890 php-5.3.27]# cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

[root@sky9890 php-5.3.27]# chmod +x /etc/init.d/php-fpm
 [root@sky9890 php-5.3.27]# chkconfig --add php-fpm

[root@sky9890 php-5.3.27]# service php-fpm start

Gracefully shutting down php-fpm warning, no pid file found - php-fpm is not running ?

[root@sky9890 php-5.3.27]# killall php-fpm

[root@sky9890 php-5.3.27]# service php-fpm start
 Starting php-fpm  done
 [root@sky9890 php-5.3.27]# service php-fpm reload
 Reload service php-fpm  done
 [root@sky9890 php-5.3.27]# service php-fpm restart
 Gracefully shutting down php-fpm . done
 Starting php-fpm  done
 [root@sky9890 php-5.3.27]# service php-fpm stop
 Gracefully shutting down php-fpm . done
 [root@sky9890 php-5.3.27]# service php-fpm start
 Starting php-fpm  done