重命名 Nginx 1.3.5 服务器:响应标头

重命名 Nginx 1.3.5 服务器:响应标头

在 nginx 1.2 & 1.3 中你可以修改源来更改名称:

src/http/ngx_http_header_filter_module.c(第 48 和 49 行):

static char ngx_http_server_string[] = "Server: Not Nginx" CRLF;
static char ngx_http_server_full_string[] = "Server: Not Nginx/1.0" CRLF;

重命名这些并重新编译源会更改 nginx 1.2 中的服务器响应名称。

然而在 1.3 中这样做似乎并没有改变名称。它仍然说nginx/1.3.5并且 server_tokens 关闭;它只是说nginx

如何在不安装第三方插件头的情况下更改 1.3 中的服务器名称?我想从源代码进行编译。

答案1

改变:src/http/modules/perl/Makefile.PL

上面写着:

NAME              => 'nginx',

答案2

我已经尝试过 Nginx 1.3.7。您仍然可以使用与以前相同的技术。

改变:src/http/ngx_http_header_filter_module.c

上面写着:

static char ngx_http_server_string[] = "Server: nginx" CRLF;

然后改变:src/core/nginx.h

上面写着:

#define NGINX_VERSION      "1.3.7"
#define NGINX_VER          "nginx/" NGINX_VERSION

相关内容