mirror of
https://github.com/nginx/nginx.git
synced 2025-06-09 02:42:48 +08:00
try_files status code
This commit is contained in:
parent
9ce893b13b
commit
ecd822809d
@ -1144,6 +1144,11 @@ ngx_http_core_try_files_phase(ngx_http_request_t *r,
|
|||||||
|
|
||||||
if (tf->lengths == NULL && tf->name.len == 0) {
|
if (tf->lengths == NULL && tf->name.len == 0) {
|
||||||
|
|
||||||
|
if (tf->code) {
|
||||||
|
ngx_http_finalize_request(r, tf->code);
|
||||||
|
return NGX_OK;
|
||||||
|
}
|
||||||
|
|
||||||
path.len -= root;
|
path.len -= root;
|
||||||
path.data += root;
|
path.data += root;
|
||||||
|
|
||||||
@ -3939,6 +3944,7 @@ ngx_http_core_try_files(ngx_conf_t *cf, ngx_command_t *cmd, void *conf)
|
|||||||
ngx_http_core_loc_conf_t *clcf = conf;
|
ngx_http_core_loc_conf_t *clcf = conf;
|
||||||
|
|
||||||
ngx_str_t *value;
|
ngx_str_t *value;
|
||||||
|
ngx_int_t code;
|
||||||
ngx_uint_t i, n;
|
ngx_uint_t i, n;
|
||||||
ngx_http_try_file_t *tf;
|
ngx_http_try_file_t *tf;
|
||||||
ngx_http_script_compile_t sc;
|
ngx_http_script_compile_t sc;
|
||||||
@ -3994,6 +4000,20 @@ ngx_http_core_try_files(ngx_conf_t *cf, ngx_command_t *cmd, void *conf)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (tf[i - 1].name.data[0] == '=') {
|
||||||
|
|
||||||
|
code = ngx_atoi(tf[i - 1].name.data + 1, tf[i - 1].name.len - 2);
|
||||||
|
|
||||||
|
if (code == NGX_ERROR) {
|
||||||
|
ngx_conf_log_error(NGX_LOG_EMERG, cf, 0,
|
||||||
|
"invalid code \"%*s\"",
|
||||||
|
tf[i - 1].name.len - 1, tf[i - 1].name.data);
|
||||||
|
return NGX_CONF_ERROR;
|
||||||
|
}
|
||||||
|
|
||||||
|
tf[i].code = code;
|
||||||
|
}
|
||||||
|
|
||||||
return NGX_CONF_OK;
|
return NGX_CONF_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -267,7 +267,9 @@ typedef struct {
|
|||||||
ngx_array_t *lengths;
|
ngx_array_t *lengths;
|
||||||
ngx_array_t *values;
|
ngx_array_t *values;
|
||||||
ngx_str_t name;
|
ngx_str_t name;
|
||||||
ngx_uint_t test_dir; /* unsigned test_dir:1; */
|
|
||||||
|
unsigned code:10;
|
||||||
|
unsigned test_dir:1;
|
||||||
} ngx_http_try_file_t;
|
} ngx_http_try_file_t;
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user