nginx 转发版本化的部分 uri api
nginx forward partial uri for versioned api
是否有可用于重定向部分 uri 的变量?我有
location /api/v1/ {
proxy_pass...;
}
location /api/ {
return 302 /api/v1/$request_uri;
}
但是,如果我像 /api/user
这样调用 url,它会重定向到 /api/v1/api/user
。如何重定向到 /api/v1/user
?是否有一个变量 returns 与 url 的位置被剥离?我尝试了 $uri
和 $document_uri
,但没有成功。
试试这个。
rewrite ^/api/((?!v1/).*)$ /api/v1/ redirect;
location /api/v1/ {
proxy_pass...;
}
是否有可用于重定向部分 uri 的变量?我有
location /api/v1/ {
proxy_pass...;
}
location /api/ {
return 302 /api/v1/$request_uri;
}
但是,如果我像 /api/user
这样调用 url,它会重定向到 /api/v1/api/user
。如何重定向到 /api/v1/user
?是否有一个变量 returns 与 url 的位置被剥离?我尝试了 $uri
和 $document_uri
,但没有成功。
试试这个。
rewrite ^/api/((?!v1/).*)$ /api/v1/ redirect;
location /api/v1/ {
proxy_pass...;
}