Http的Nginx版本信息
如果观察http请求的响应中的header,就会发现有一个名为server的参数,用于指示服务器端正在使用哪个web服务。
例如
新浪网:
Server:nginx
开源中国:
服务器: t引擎
segmentfault也没有返回到服务器!
许多网站不仅有nginx版本号,而且还有版本号,但完全不需要向用户公开版本号。 可以通过设置server_tokens off来隐藏版本号。
PHP的Nginx版本信息
即使关闭server_tokens,也并不是完全看不到nginx的版本号~
从上图可以看到,http返回的header没有版本号,但php可以获取nginx的版本号。 要隐藏php的版本号,也必须修改名为fastcgi.conf的文件。
删除后面的/$nginx_version,或者直接注释掉这一行!
fastcgi _参数服务器_软件引擎/$引擎版本;
修改或隐藏Nginx信息
如果我连nginx都不表示呢? 还是将nginx修改为Tengine?
此时,请修改nginx源文件src/core/nginx.h。 例如,我询问tengine对nginx的修改:
也可以将NGINX_VER赋给空。 这样,Http返回的header中的服务器也将为空。
需要注意的是,如果将server_tokens设置为off,则即使源NGINX_VER被分配为空或更改为其他值,返回的server也将保持为nginx,并且不显示版本号