
如题 我要配置以 api 开头的路径 例子 1 http://localhost/api/a 例子 2 http://localhost/api/a/b/c
location ^~ /api/ { proxy_pass http://localhost:5000/test; }
已经尝试网上很多方法了 但是还是不行 。
1 xiaoriri666 2022 年 7 月 18 日 location ^~/api/ { proxy_pass http://127.0.0.1:30003/; } 试试这个呢,~中间没有空格 |
2 Seanfuck 2022 年 7 月 18 日 是不是配置里面有 if 条件,if 的优先级比 location 高,要把 if 放在 location / {} 里。 |
3 hatebugs 2022 年 7 月 18 日 via iPhone 开 debug 日志看匹配到哪个 location 了 |
4 killva4624 2022 年 7 月 18 日 把完整的配置文件贴出来。 |
5 Martens 2022 年 7 月 18 日 nginx 是返回 404 ?还是 502 ? 如果是 404 ,那么 404 是你后端返回的吗? 如果是加一个重写规则:rewrite ^/api/(.*)$ /$1 break; |
6 hhhhhh123 OP @xiaoriri666 这个不行 |
9 hhhhhh123 OP @Martens 看了下 服务端的日志,404 是服务端出来的 proxy_pass http://localhost:5000/test;我以为这行代码 不会进行将上面多余的路径加上来, 请求进来居然是 /testa, /testa/b/c |