in miss case memcached module returned END instead of default 404 page body
the bug has been introduced in r2269
diff --git a/src/http/ngx_http_upstream.c b/src/http/ngx_http_upstream.c
index f567a43..ace467f 100644
--- a/src/http/ngx_http_upstream.c
+++ b/src/http/ngx_http_upstream.c
@@ -1441,11 +1441,6 @@
return NGX_OK;
}
- if (status == NGX_HTTP_NOT_FOUND && u->conf->intercept_404) {
- ngx_http_upstream_finalize_request(r, u, NGX_HTTP_NOT_FOUND);
- return NGX_OK;
- }
-
#if (NGX_HTTP_CACHE)
if (u->peer.tries == 0 && u->stale && (u->conf->use_stale & un->mask)) {
@@ -1471,6 +1466,13 @@
ngx_http_err_page_t *err_page;
ngx_http_core_loc_conf_t *clcf;
+ status = u->headers_in.status_n;
+
+ if (status == NGX_HTTP_NOT_FOUND && u->conf->intercept_404) {
+ ngx_http_upstream_finalize_request(r, u, NGX_HTTP_NOT_FOUND);
+ return NGX_OK;
+ }
+
if (!u->conf->intercept_errors) {
return NGX_DECLINED;
}
@@ -1481,8 +1483,6 @@
return NGX_DECLINED;
}
- status = u->headers_in.status_n;
-
err_page = clcf->error_pages->elts;
for (i = 0; i < clcf->error_pages->nelts; i++) {