включение/отключение fastcgi_intercept_errors/error_page в зависимости от хедера апстрима: возможно ли?

Илья yesin.iv на gmail.com
Вт Июн 5 17:23:20 UTC 2012


Добрый день.

Мучает вопрос, озвученный в заголовке.
Всегда был уверен, что это просто, но при реализации наткнулся на
*nginx: [emerg] "error_page" directive is not allowed here in
/path/to/nginx/config.conf
*или
*nginx: [emerg] "fastcgi_intercept_errors" directive is not allowed here in
/path/to/nginx/config.conf
*
Задача проста по сути:
Балансировщику, при получении от апстрима специального заголовка (допустим,
"X-Special-Header: 1"), необходимо вернуть именно то, что вернул апстрим,
не глядя на HTTP_STATUS_CODE.
Во всех остальных случаях, надо производить обработку статусного кода через
error_page и соответствующий location @magic_loc.

Может кто знает решение? Ни поверхностное гугление, ни вдумчиое чтение
документации ни разу не дали ответа.

Заранее спасибо.
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mailman.nginx.org/pipermail/nginx-ru/attachments/20120605/4ba12f59/attachment-0001.html>


Подробная информация о списке рассылки nginx-ru