隐藏X-Powered-By(nginx)

时间:2009-06-07 16:28:53

标签: security nginx

那么有没有办法在Nginx上隐藏X-Powered-By?

7 个答案:

答案 0 :(得分:47)

x-powered-by由模块给出,例如php fastcgi模块提供设置expose_php=Off 在php.ini

答案 1 :(得分:36)

proxy_hide_header X-Powered-By;

答案 2 :(得分:6)

答案 3 :(得分:4)

如果您将NGINX与FastCGI一起使用,则应使用:

fastcgi_hide_header X-Powered-By;

答案 4 :(得分:3)

尝试使用允许您声明的more_clear_headers directive from the nginx's HttpHeadersMoreModule

more_clear_headers 'X-Powered-By';

应该做你想做的事。

答案 5 :(得分:0)

#nano /etc/nginx/nginx.conf

评论此行

more_clear_headers 'X-Powered-By';

并重新启动Nginx

答案 6 :(得分:0)

Nginx

  1. 打开此文件

    $ sudo vi /etc/nginx/nginx.conf

  2. 找到HTTP部分,此部分定义Nginx的HttpCoreModule的配置。添加以下指令:

    $ server_tokens off;

这将配置Nginx在HTTP头中不发送任何版本号。

(可以删除服务器名称,但是,由于无法动态加载Nginx模块,因此您需要使用HttpHeadersMoreModule Nginx模块从源代码重新编译Nginx。)

  1. 重新加载Nginx配置 要应用更改,请重新加载Nginx服务:

    $ sudo service nginx reload

PHP

出于服务器安全性的考虑,建议您通过想要知道您是否正在运行PHP来禁用或隐藏这些信息,以防止可能以服务器为目标的攻击者。

第1步。

$ `sudo nano /etc/php.ini`
  1. 找到关键字 expose_php 并将其值设置为 Off

    $ expose_php = off

  2. 如果您将PHP作为FPM运行,则需要重新加载PHP-FPM

    $ sudo service php-fpm reload

重新加载后,应该缺少响应标头 X-Powered-By:PHP / 7.2