А почему внутри ngx_http_upstream_process_header()
если process_header() апстрима вернула код >= 400
и есть upstream.redirect_errors обязательно проверяется
существование нужной error_page в location conf?
почему не отдать дефолтную страницу на ошибку если нет custom?
вопрос вызван тем, что если сделать запрос, который не уходит к апстриму и
возвращает например 404, то показывается custom страница об ошибке или
происходит fallback на дефолтную, а если запрос передается апстриму,
то этого нет.
Директивы proxy_redirect_errors и fastcgi_redirect_errors могут принимать
значения on|off. Поэтому решение, делать редирект или нет для конкретного
кода ошибки, возлагается на error_page.
и еще вопрос: каким образом можно ручками выдать error_page в таком случае?
через ngx_http_finalize_request() ?