mirror of
https://github.com/nginx/nginx.git
synced 2024-12-20 14:13:33 -06:00
Request body: fixed "501 Not Implemented" error handling.
It is not about "Method" but a generic message, and is expected to be used e.g. if specified Transfer-Encoding is not supported. Fixed message to match RFC 2616. Additionally, disable keepalive on such errors as we won't be able to read request body correctly if we don't understand Transfer-Encoding used.
This commit is contained in:
parent
d228cf3638
commit
ab5ac3b095
@ -112,7 +112,7 @@ static ngx_str_t ngx_http_status_lines[] = {
|
|||||||
#define NGX_HTTP_OFF_5XX (NGX_HTTP_LAST_4XX - 400 + NGX_HTTP_OFF_4XX)
|
#define NGX_HTTP_OFF_5XX (NGX_HTTP_LAST_4XX - 400 + NGX_HTTP_OFF_4XX)
|
||||||
|
|
||||||
ngx_string("500 Internal Server Error"),
|
ngx_string("500 Internal Server Error"),
|
||||||
ngx_string("501 Method Not Implemented"),
|
ngx_string("501 Not Implemented"),
|
||||||
ngx_string("502 Bad Gateway"),
|
ngx_string("502 Bad Gateway"),
|
||||||
ngx_string("503 Service Temporarily Unavailable"),
|
ngx_string("503 Service Temporarily Unavailable"),
|
||||||
ngx_string("504 Gateway Time-out"),
|
ngx_string("504 Gateway Time-out"),
|
||||||
|
@ -260,9 +260,9 @@ static char ngx_http_error_500_page[] =
|
|||||||
|
|
||||||
static char ngx_http_error_501_page[] =
|
static char ngx_http_error_501_page[] =
|
||||||
"<html>" CRLF
|
"<html>" CRLF
|
||||||
"<head><title>501 Method Not Implemented</title></head>" CRLF
|
"<head><title>501 Not Implemented</title></head>" CRLF
|
||||||
"<body bgcolor=\"white\">" CRLF
|
"<body bgcolor=\"white\">" CRLF
|
||||||
"<center><h1>501 Method Not Implemented</h1></center>" CRLF
|
"<center><h1>501 Not Implemented</h1></center>" CRLF
|
||||||
;
|
;
|
||||||
|
|
||||||
|
|
||||||
@ -384,6 +384,7 @@ ngx_http_special_response_handler(ngx_http_request_t *r, ngx_int_t error)
|
|||||||
case NGX_HTTPS_CERT_ERROR:
|
case NGX_HTTPS_CERT_ERROR:
|
||||||
case NGX_HTTPS_NO_CERT:
|
case NGX_HTTPS_NO_CERT:
|
||||||
case NGX_HTTP_INTERNAL_SERVER_ERROR:
|
case NGX_HTTP_INTERNAL_SERVER_ERROR:
|
||||||
|
case NGX_HTTP_NOT_IMPLEMENTED:
|
||||||
r->keepalive = 0;
|
r->keepalive = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user