我使用重定向将所有来自 /api/ 的请求路由到我的服务器(端口 5000)。这是我的 nginx.conf:
location /api/ {
rewrite ^/api/(.*)$ /$1 break;
proxy_pass http://100.100.100.100:5000;#my ip here
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
nginx 解码所有转义字符,但我需要原始版本。如何更改我的 nginx.conf?
答案1
可以使用变量来实现不触及转义字符的map
重写$request_uri
:
map $request_uri $request_uri_api {
~^/api/(.*) $1;
}
location /api/ {
proxy_pass http://100.100.100.100:5000/$request_uri_api;
}