背景
项目中爆出安全漏洞,说Nginx的版本号已泄露。如下图所示:
解决
在http/server/location节点下添加:server_token off;
至于添加在哪一个位置,那看你想要设定的影响范围了。
- 如果是http,则影响最大,所有server和location都影响;
- 如果是server,则只影响server及server中的location;
- 如果是location,则只影响特定的location;
serve_tokens指令
Syntax: | server_tokens on | off | build | string; |
Default: | server_tokens on; |
Context: | http, server, location |
该指令会在Response Header中添加“Server”表示Nginx的版本号,示例如下:
参数解释
on:显示Nginx版本号
off:关闭Nginx版本号的显示
build:自1.11.10版本开始支持build名称,即编译nginx时的选项--build=name。
string:自1.9.13版本开始支持自定义的字符串变量作为Server的值,如果string是空的,则表示禁用Server。可用的变量都在这里:http://nginx.org/en/docs/varindex.html
参考
1.[nginx官方文档 - server-tokens](http://nginx.org/en/docs/http/ngx_http_core_module.html#server_tokens)