@ziercool

NGINX *nix proxy_pass внутри сети с подменой пути?

Доброго дня.
Есть адрес сайта например https://domain.com/
В "Интернет" смотрит nginx, он делает proxypass по location /data на другой сервер внутри сети, но путь в сети выглядит так: 1.1.1.1/site

При попытке перейти на https://domain.com/data браузер начинает пытаться открыть путь domain.com/site или https://domain.com/site

Подскажите как победить?

конфиг location:

location /data {
	proxy_pass http://1.1.1.1/site;
	proxy_set_header Host $host;
	proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
	proxy_set_header X-Real-IP $remote_addr; 
}


UPD:
Это публикация 1С. При попытке открыть в бравзере у неё идет несколько редиректов и путь меняется, например, добавляется язык который установлен у браузера. в итоге возвращает в конце пути /ru_RU/ в моём случае. когда возвращает этот путь, он уже имеет адрес https://domain.com/site/ru_RU/ что вызывает 301 что и зацикливает.
  • Вопрос задан
  • 108 просмотров
Пригласить эксперта
Ответы на вопрос 1
ky0
@ky0 Куратор тега Nginx
Миллиардер, филантроп, патологический лгун
location ~ ^/data/(.*)$ {
    rewrite ^/data/(.*) /site/$1 break;
    proxy_pass http://1.1.1.1;
}
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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