Назад | Перейти на главную страницу

Nginx add_header для страницы 50 *

В настоящее время я пытаюсь заставить nginx добавить заголовок к ответу, когда он отправляет какую-то ошибку 50 *. У меня уже есть директива add_header в блоке http, и она соблюдается для всех запросов, кроме кажущихся ошибок. Я также пробовал следующее на одном из моих хостов:

location /mediocregopheristhecoolest {
    add_header X-Test "blahblahblah";
    return 502;                                                                                                    
}       

Переход на эту страницу дает мне 502, но без заголовка. Это просто то, чего не делает nginx, или я делаю это неправильно?

Начиная с Nginx 1.7.5 вы можете использовать always чтобы добавить заголовок независимо от кода ответа:

add_header X-Test "blahblahblah" always;

Документация утверждает, что add_header «Добавляет указанное поле в заголовок ответа при условии, что код ответа равен 200, 204, 206, 301, 302, 303, 304 или 307. Значение может содержать переменные». Так что с 502 это не работает.

Забыл добавить, что можно использовать стороннюю заголовки больше модуль для добавления заголовков к другим кодам. Однако вам, вероятно, придется перекомпилировать, чтобы добавить его.