关于nginx的反向代理的问题

发布于 2022-09-06 06:22:56 字数 1633 浏览 38 评论 0

我本地有一个服务监听4000端口http://127.0.0.1:4000,其下还有http://127.0.0.1:4000/test这种路径。
现在我需要nginx配置8000端口下的 /proxy 代理到4000端口下的 /
例如访问http://127.0.0.1:8000/proxy/会代理到http://127.0.0.1:4000/,访问http://127.0.0.1:8000/proxy/test会代理到http://127.0.0.1:4000/test。
但是自己配置失败了,以下的错误截图和配置截图。

图片描述

图片描述

图片描述

图片描述

以下是配置截图
图片描述

但是如果我配置location /test ,则可以代理到http://127.0.0.1:4000/test,以下是截图

图片描述

图片描述

所以想请教一下关于这个问题,该如何配置,有相关的文章或资料更好了。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

静谧 2022-09-13 06:22:56
location /proxy/ {
    rewrite /proxy/(.*) /$1 break;
    proxy_pass         http://127.0.0.1:4000;
    proxy_redirect     off;
}
喜爱纠缠 2022-09-13 06:22:56

你应该在4000服务器下配置个rewrite

 rewrite ^/proxy/(.*)$ $1;

应该是这么写,你试一下

以可爱出名 2022-09-13 06:22:56

location ^~ /proxy {

proxy_pass         http://127.0.0.1:4000;

}
试试这样,应该是匹配规则的问题。
图片描述

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文