суббота, 1 августа 2015 г.

Nginx в качестве прокси и редирект

На передовой стоит nginx который обслуживает основные запросы, но часть серверов обслуживает апач на порту 8080. И если апач делает редирект (например на страницу авторизации) то все ломается, т.к. 8080 порт с наружи не виден. Нужно заставить nginx переписывать ответ на редирект

server {
        listen 80;
        server_name ~^(.+)\.v1\.ac-test\.tk$;

        location / {
                resolver 8.8.8.8;
                proxy_set_header        X-Real-IP       $remote_addr;
                proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_pass http://$host:8080;
                proxy_redirect     http://$host:8080/ http://$host/;
                proxy_set_header   Host $host;
        }
}

Надо учесть что для такой настройки требуется dns сервер, который будет резолвить наши  хосты. Если нужно резолвить на основе файла hosts, тогда придется установить dnsmasq

Комментариев нет:

Отправить комментарий