那么有没有办法在Nginx上隐藏X-Powered-By?
答案 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)
打开此文件
$ sudo vi /etc/nginx/nginx.conf
找到HTTP部分,此部分定义Nginx的HttpCoreModule的配置。添加以下指令:
$ server_tokens off;
这将配置Nginx在HTTP头中不发送任何版本号。
(可以删除服务器名称,但是,由于无法动态加载Nginx模块,因此您需要使用HttpHeadersMoreModule Nginx模块从源代码重新编译Nginx。)
重新加载Nginx配置 要应用更改,请重新加载Nginx服务:
$ sudo service nginx reload
出于服务器安全性的考虑,建议您通过想要知道您是否正在运行PHP来禁用或隐藏这些信息,以防止可能以服务器为目标的攻击者。
第1步。
$ `sudo nano /etc/php.ini`
找到关键字 expose_php 并将其值设置为 Off :
$ expose_php = off
如果您将PHP作为FPM运行,则需要重新加载PHP-FPM
$ sudo service php-fpm reload
重新加载后,应该缺少响应标头 X-Powered-By:PHP / 7.2 。