У меня есть один NGINX, работающий как обратный прокси. Мне нужно удалить подстроку string_1 из URL, остальная часть URL является переменной.
Пример:
Origin: http://host:port/string_1/string_X/command?xxxxx
Destination: http://internal_host:port/string_X/command?xxxxx
nginx.conf:
location /string_1/ {
proxy_pass http://internal_host:port/$request_uri$query_string;
Спасибо,
@pcamacho
решение1
Это действительно просто и просто. Просто добавьте /path/
часть к proxy_pass
и nginx заменит location
префикс s на этот путь. Вам нужно заменить /string_1/
на /
, так что сделайте это:
location /string_1/ {
proxy_pass http://internal_host:port/;
}
решение2
Я нашел способ переписать URL proxy_pass:
location /string_1/ {
if ($request_uri ~* "/string_1/(.*)") {
proxy_pass http://internal_host:port/$1;
}
}
С уважением,
@pcamacho