Nginx URL重写(rewrite)配置

*若价格不公道,可以让提问者在平台追加赏金哦,平台是您利益的保证

已完成
Nginx URL重写(rewrite)配置-残留の笑颜
残留の笑颜 3年前发布
悬赏:15.0 元

问题详情:分类: Java-nginx

前端ajax请求是: http://127.0.0.1:8899/aa/bb/cc.go?param=dd (其中aa,bb,cc,dd都是可变参数, 但是后缀.go是固定的)

通过nginx代理到: http://ee.test.com/projectName/aa/bb/cc.go?param=dd

在这里我用的是正则匹配:


但是会报错, 说是正则表达式的时候proxy_pass指令中不能有URI, 也就是说proxy_pass中只能写http://ee.test.com, 不能写http://ee.test.com/projectName ,
那这个projectName怎么加进去呢, 我想在location中加一个rewrite来重写URL, 但是不知道怎么写.

*若价格不公道,可以让提问者在平台追加赏金哦,平台是您利益的保证。你觉得当前的价格如何呢,奉上您珍贵的一票吧

虚高0人次 适中0人次 偏低0人次

分享海报会更快解决你的问题哦!分享海报

参考答案:

刘师傅 3年前解决
已赚540.0元

通过location正则匹配进行代理的时候,proxy_pass指令中不能有URI, 也就是说proxy_pass中只能写http://ee.test.com, 不能写http://ee.test.com/projectName。
解决方法为在代理之前先对url路径进行rewrite,在host后加上contextPath,最终解决方案如下:


同时可以思考以下案例为什么翻车:

此处可发布评论

评论(1

刘师傅 能力:120

2020-10-28 19:29:27

加你了
点击加载更多
客服QQ 1913284695