Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nginx/nginx.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoman Arutyunyan <arut@nginx.com>2017-07-20 15:51:11 +0300
committerRoman Arutyunyan <arut@nginx.com>2017-07-20 15:51:11 +0300
commit129b06dc5dfab7b4513a4f274b3778cd9b8a6a22 (patch)
treee141829554c9b7510c99a3d1e99523c39d570a3d /src/http/ngx_http.c
parenta87e05a3312e06f88809320eb8dc39833ea4cbc3 (diff)
Precontent phase.
The phase is added instead of the try_files phase. Unlike the old phase, the new one supports registering multiple handlers. The try_files implementation is moved to a separate ngx_http_try_files_module, which now registers a precontent phase handler.
Diffstat (limited to 'src/http/ngx_http.c')
-rw-r--r--src/http/ngx_http.c19
1 files changed, 8 insertions, 11 deletions
diff --git a/src/http/ngx_http.c b/src/http/ngx_http.c
index 8d4fed5de..9d8b6d79a 100644
--- a/src/http/ngx_http.c
+++ b/src/http/ngx_http.c
@@ -382,6 +382,13 @@ ngx_http_init_phases(ngx_conf_t *cf, ngx_http_core_main_conf_t *cmcf)
return NGX_ERROR;
}
+ if (ngx_array_init(&cmcf->phases[NGX_HTTP_PRECONTENT_PHASE].handlers,
+ cf->pool, 2, sizeof(ngx_http_handler_pt))
+ != NGX_OK)
+ {
+ return NGX_ERROR;
+ }
+
if (ngx_array_init(&cmcf->phases[NGX_HTTP_CONTENT_PHASE].handlers,
cf->pool, 4, sizeof(ngx_http_handler_pt))
!= NGX_OK)
@@ -459,8 +466,7 @@ ngx_http_init_phase_handlers(ngx_conf_t *cf, ngx_http_core_main_conf_t *cmcf)
n = 1 /* find config phase */
+ use_rewrite /* post rewrite phase */
- + use_access /* post access phase */
- + cmcf->try_files;
+ + use_access; /* post access phase */
for (i = 0; i < NGX_HTTP_LOG_PHASE; i++) {
n += cmcf->phases[i].handlers.nelts;
@@ -529,15 +535,6 @@ ngx_http_init_phase_handlers(ngx_conf_t *cf, ngx_http_core_main_conf_t *cmcf)
continue;
- case NGX_HTTP_TRY_FILES_PHASE:
- if (cmcf->try_files) {
- ph->checker = ngx_http_core_try_files_phase;
- n++;
- ph++;
- }
-
- continue;
-
case NGX_HTTP_CONTENT_PHASE:
checker = ngx_http_core_content_phase;
break;