mirror of
https://github.com/nginx/nginx.git
synced 2025-02-25 18:55:26 -06:00
*) regex match must return NGX_OK to stop regex searching,
this fixes inclusive regex location *) change NGX_HTTP_INTERNAL_SERVER_ERROR to NGX_ERROR
This commit is contained in:
parent
9a70242f07
commit
dc911287e8
@ -789,7 +789,7 @@ ngx_http_core_find_config_phase(ngx_http_request_t *r,
|
|||||||
|
|
||||||
rc = ngx_http_core_find_location(r);
|
rc = ngx_http_core_find_location(r);
|
||||||
|
|
||||||
if (rc == NGX_HTTP_INTERNAL_SERVER_ERROR) {
|
if (rc == NGX_ERROR) {
|
||||||
ngx_http_finalize_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR);
|
ngx_http_finalize_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR);
|
||||||
return NGX_OK;
|
return NGX_OK;
|
||||||
}
|
}
|
||||||
@ -1117,6 +1117,14 @@ ngx_http_update_location_config(ngx_http_request_t *r)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* NGX_OK - exact or regex match
|
||||||
|
* NGX_DONE - auto redirect
|
||||||
|
* NGX_AGAIN - inclusive match
|
||||||
|
* NGX_ERROR - regex error
|
||||||
|
* NGX_DECLINED - no match
|
||||||
|
*/
|
||||||
|
|
||||||
static ngx_int_t
|
static ngx_int_t
|
||||||
ngx_http_core_find_location(ngx_http_request_t *r)
|
ngx_http_core_find_location(ngx_http_request_t *r)
|
||||||
{
|
{
|
||||||
@ -1173,7 +1181,7 @@ ngx_http_core_find_location(ngx_http_request_t *r)
|
|||||||
ngx_regex_exec_n
|
ngx_regex_exec_n
|
||||||
" failed: %d on \"%V\" using \"%V\"",
|
" failed: %d on \"%V\" using \"%V\"",
|
||||||
n, &r->uri, &(*clcfp)->name);
|
n, &r->uri, &(*clcfp)->name);
|
||||||
return NGX_HTTP_INTERNAL_SERVER_ERROR;
|
return NGX_ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* match */
|
/* match */
|
||||||
@ -1182,7 +1190,9 @@ ngx_http_core_find_location(ngx_http_request_t *r)
|
|||||||
|
|
||||||
/* look up nested locations */
|
/* look up nested locations */
|
||||||
|
|
||||||
return ngx_http_core_find_location(r);
|
rc = ngx_http_core_find_location(r);
|
||||||
|
|
||||||
|
return (rc == NGX_ERROR) ? rc : NGX_OK;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
Reference in New Issue
Block a user