Nginx шпаргалка (черновик)

Nginx шпаргалка

proxy_set_header Host — еще одна важная команда, которая в запросе к сайту донору выставляет правильное поле HOST. Без нее будет подставляться имя нашего прокси сервера и запрос будет ошибочным.

Пример1:
proxy_set_header      Host     www.6pm.com;
Пример2:
proxy_set_header Host $host;
# Отправляем реальный адрес посетителя приложению в заголовке X-Real-IP header:
proxy_set_header X-Real-IP $remote_addr
# Добавляем адреса сети в список доверенных:
set_real_ip_from 66.110.32.128/30
set_real_ip_from 83.234.15.112/30
set_real_ip_from 87.245.197.192/30
set_real_ip_from 185.94.108.0/24

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

Заголовок X-Forwarded-For
Заголовок X-Forwarded-For содержит список прокси серверов по которым прошёлся клиент перед этим сервером, а переменная $proxy_add_x_forwarded_for содержит полученный заголовок X-Forwarder-For плюс добавляет свой сервер в этот список (это используется для передачи реального ip-клиента на backend).


try_files $uri $uri/ /index.html;

Специально для того, чтобы красиво записывать такие рерайты придумана специальная директива — try_files. В самом простом варианте ее обычно записывают так:
try_files $uri $uri/ @fallback
что обозначает:
1. Проверить, существует ли запрошенный файл. Если да — отдать его, если нет — идти далее.
2. Проверить, существует ли директория с запрошенным именем. Если да — отдать ее, если нет — идти далее.
3. Передать запрос на обработку в именованный location @fallback.

Добавить комментарий