Обеспечение правильной работы перенаправления на прокси-сервере

Итак, я сейчас пытаюсь понять, какая конфигурация является хорошей идеей для прокси-сервера nginx. Я немного застрял на следующих двух вариантах:

  • proxy_set_header Host $ host;
  • proxy_redirect default ; (в любом случае это значение по умолчанию и, следовательно, лишнее)

Если я правильно понимаю, то они оба, похоже, преследуют одну и ту же цель: обеспечение правильной работы перенаправления. Установка переменной заголовка Host на $ host (это имя сервера nginx, а по умолчанию ( $ proxy_host ) - имя прокси-сервера) гарантирует, что прокси-сервер «видит себя как $ host "и таким образом связывает пути типа / some / sub / path к ресурсам в $ host / some / sub / path вместо $ proxy_host / some / sub / path .

Но, похоже, для этого и предназначен proxy_redirect . Поэтому я не уверен, что с этим делать. Возможно, я не совсем понимаю эти параметры совершенно правильные.

0
задан 1 May 2021 в 20:23
1 ответ

Роль заголовка Host заключается в том, чтобы сервер восходящего потока выбрал правильный виртуальный хост для обслуживания сайта. Кроме того, приложение использует его для определения того, что посетитель подключается к правильному домену.

Заголовок proxy_redirect используется для изменения полей Location / Refresh в ответах, которые восходящий сервер посылает посетителям.

Таким образом, эти две функции дополняют друг друга. Заголовок Host используется для маршрутизации запроса, а proxy_redirect - для изменения ответа.

1
ответ дан 7 May 2021 в 19:59

Теги

Похожие вопросы