mirror of
https://github.com/nginx/nginx.git
synced 2025-06-07 17:52:38 +08:00
Reconsidered server_tokens with an empty value.
An empty value will be treated as "off".
This commit is contained in:
parent
ae5e76ea06
commit
0b768c1435
@ -295,12 +295,12 @@ ngx_http_header_filter(ngx_http_request_t *r)
|
|||||||
return NGX_ERROR;
|
return NGX_ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (tokens.len == 3
|
if (tokens.len == 0
|
||||||
&& ngx_strncmp(tokens.data, "off", 3) == 0)
|
|| (tokens.len == 3 && ngx_strncmp(tokens.data, "off", 3) == 0))
|
||||||
{
|
{
|
||||||
ngx_str_set(&tokens, ngx_http_server_string);
|
ngx_str_set(&tokens, ngx_http_server_string);
|
||||||
|
|
||||||
} else if (tokens.len) {
|
} else {
|
||||||
ngx_str_set(&tokens, ngx_http_server_full_string);
|
ngx_str_set(&tokens, ngx_http_server_full_string);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -481,7 +481,7 @@ ngx_http_header_filter(ngx_http_request_t *r)
|
|||||||
}
|
}
|
||||||
*b->last++ = CR; *b->last++ = LF;
|
*b->last++ = CR; *b->last++ = LF;
|
||||||
|
|
||||||
if (r->headers_out.server == NULL && tokens.len) {
|
if (r->headers_out.server == NULL) {
|
||||||
b->last = ngx_cpymem(b->last, tokens.data, tokens.len);
|
b->last = ngx_cpymem(b->last, tokens.data, tokens.len);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -32,12 +32,6 @@ static u_char ngx_http_error_tail[] =
|
|||||||
;
|
;
|
||||||
|
|
||||||
|
|
||||||
static u_char ngx_http_error_no_tail[] =
|
|
||||||
"</body>" CRLF
|
|
||||||
"</html>" CRLF
|
|
||||||
;
|
|
||||||
|
|
||||||
|
|
||||||
static u_char ngx_http_msie_padding[] =
|
static u_char ngx_http_msie_padding[] =
|
||||||
"<!-- a padding to disable MSIE and Chrome friendly error page -->" CRLF
|
"<!-- a padding to disable MSIE and Chrome friendly error page -->" CRLF
|
||||||
"<!-- a padding to disable MSIE and Chrome friendly error page -->" CRLF
|
"<!-- a padding to disable MSIE and Chrome friendly error page -->" CRLF
|
||||||
@ -638,16 +632,13 @@ ngx_http_send_special_response(ngx_http_request_t *r,
|
|||||||
return NGX_ERROR;
|
return NGX_ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (tokens.len == 3
|
if (tokens.len == 0
|
||||||
&& ngx_strncmp(tokens.data, "off", 3) == 0)
|
|| (tokens.len == 3 && ngx_strncmp(tokens.data, "off", 3) == 0))
|
||||||
{
|
{
|
||||||
ngx_str_set(&tail, ngx_http_error_tail);
|
ngx_str_set(&tail, ngx_http_error_tail);
|
||||||
|
|
||||||
} else if (tokens.len) {
|
|
||||||
ngx_str_set(&tail, ngx_http_error_full_tail);
|
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
ngx_str_set(&tail, ngx_http_error_no_tail);
|
ngx_str_set(&tail, ngx_http_error_full_tail);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -252,14 +252,14 @@ ngx_http_v2_header_filter(ngx_http_request_t *r)
|
|||||||
return NGX_ERROR;
|
return NGX_ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (tokens.len == 3
|
if (tokens.len == 0
|
||||||
&& ngx_strncmp(tokens.data, "off", 3) == 0)
|
|| (tokens.len == 3 && ngx_strncmp(tokens.data, "off", 3) == 0))
|
||||||
{
|
{
|
||||||
server_tokens = 0;
|
server_tokens = 0;
|
||||||
len += 1 + sizeof(nginx);
|
len += 1 + sizeof(nginx);
|
||||||
ngx_str_set(&tokens, "nginx");
|
ngx_str_set(&tokens, "nginx");
|
||||||
|
|
||||||
} else if (tokens.len) {
|
} else {
|
||||||
server_tokens = 1;
|
server_tokens = 1;
|
||||||
len += 1 + nginx_ver_len;
|
len += 1 + nginx_ver_len;
|
||||||
ngx_str_set(&tokens, NGINX_VER);
|
ngx_str_set(&tokens, NGINX_VER);
|
||||||
@ -468,7 +468,7 @@ ngx_http_v2_header_filter(ngx_http_request_t *r)
|
|||||||
pos = ngx_sprintf(pos, "%03ui", r->headers_out.status);
|
pos = ngx_sprintf(pos, "%03ui", r->headers_out.status);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (r->headers_out.server == NULL && tokens.len) {
|
if (r->headers_out.server == NULL) {
|
||||||
ngx_log_debug1(NGX_LOG_DEBUG_HTTP, fc->log, 0,
|
ngx_log_debug1(NGX_LOG_DEBUG_HTTP, fc->log, 0,
|
||||||
"http2 output header: \"server: %V\"",
|
"http2 output header: \"server: %V\"",
|
||||||
&tokens);
|
&tokens);
|
||||||
|
Loading…
Reference in New Issue
Block a user