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

Конфигурация NGINX proxy_set_header

Как настроить nginx для установки proxy_set_header для всех доменов, но не для всех?

Я включаю глобальную конфигурацию прокси (например, /etc/nginx/conf.d/02_proxy.conf) в конце основного файла конфигурации Nginx (/etc/nginx/nginx.conf):

...

events {
  worker_connections 1024;
  use epoll;
}

http {
  include /etc/nginx/mime.types;
  default_type application/octet-stream;

  ...

  include /etc/nginx/conf.d/*.conf;
  include /etc/nginx/sites-enabled/*;
}

Из Документация Nginx:

В proxy_set_header директивы наследуются от предыдущего уровня тогда и только тогда, когда на текущем уровне не определены директивы proxy_set_header.

Это означает, что вы можете использовать собственный заголовок на server или location уровень для перезаписи всех глобальных заголовков:

server {

  ...

  proxy_set_header X-RESET-CUSTOM-HEADERS true;

  ...
}

Если вы используете дополнительные proxy_set_header на server или location уровень и хотите сохранить глобальные, вы должны снова импортировать этот файл на этом уровне.

Просто положи свой proxy_set_header в твоем http блок, и не только в вашем сервере или блоке локации.

Синтаксис proxy_set_header: значение заголовка proxy_set_header;

по умолчанию: Хост и соединение

контекст: http, сервер, расположение