gpt4 book ai didi

regex - Nginx 位置正则表达式捕获变量

转载 作者:行者123 更新时间:2023-12-01 02:05:22 24 4
gpt4 key购买 nike

我有这个 REST API URL:

http://localhost:4000/api/v2/stocks/accounts/1162/tradings

我希望它 proxy_pass 到 URL:
http://localhost:4001/api/v2/stocks/accounts/1162/tradings

其中 1162 是 URL 参数,可以是其他值。

我有以下几点:
location ^~ /api/v2/stocks/accounts/([^/]+)/tradings {
proxy_pass http://localhost:4001/api/v2/stocks/accounts/$1/tradings;
}

但它不起作用(404 Not Found),我用谷歌搜索过类似的问题,但没有太大帮助:

喜欢这个: Get arguments Nginx and path for proxy_pass或者这个: trouble with location regex and redirection in nginx .

有什么方法可以使用 nginx 实现我想要的吗?

在此先感谢您的帮助。

添加:

我还添加了参数捕获:
location ~ /api/v2/stocks/accounts/([^/]+)/tradings/(.*) {
proxy_pass http://localhost:4001/api/v2/stocks/accounts/$1/tradings/$2$is_args$args;
}

最佳答案

你可以这样做。不是' ^~ '

location ~ /api/v2/stocks/accounts/([^/]+)/tradings {
proxy_pass http://localhost:4001/api/v2/stocks/accounts/$1/tradings;
}

nginx.org 所述.
^~ 常配 目录 ,像下面这样:
location ^~ /dir/ {
# some actions
}

关于regex - Nginx 位置正则表达式捕获变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33079466/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com