我有一个 NGINX 充当反向代理。我需要从 URL 中删除子字符串 string_1,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
我找到了重写 proxy_pass URL 的方法:
location /string_1/ {
if ($request_uri ~* "/string_1/(.*)") {
proxy_pass http://internal_host:port/$1;
}
}
问候,
@pcamacho