Nginx 反向代理问题之二

2016 年 4 月 20 日
 brando

案例:
访问地址: abc.hello.com
反向代理到内网其中一台机器
192.168.1.12:8080/abc/ 试了好多次, nginx 官网文档也没能看明白,我最后试出的结果是反向地址到了
abc.hello.com/abc/

请教大神解决方式,小生万分感谢!!!

相关问题 http://v2ex.com/t/239976 [可以无视]

5539 次点击
所在节点    NGINX
34 条回复
kn007
2016 年 4 月 21 日
@ianisme 哦,你想让楼主试试。。

理论上
abc.hello.com -> 192.168.1.12:8080/abc/
这种应该不麻烦。
kn007
2016 年 4 月 21 日
@ianisme 莫非我理解错了, 23333 ,最近怎么样?
ianisme
2016 年 4 月 21 日
@kn007 楼主已经没回话了。话说 V2EX 圈子好小,好几次碰到你 O(∩_∩)O 哈哈~
kn007
2016 年 4 月 21 日
@ianisme 估计楼主睡着了。
相对活跃吧,已经被几个好友说我整天泡 v2 时间过长。
ianisme
2016 年 4 月 21 日
@kn007 你的出镜率好高
kn007
2016 年 4 月 21 日
@ianisme 主要是头像黑麻麻。。哈哈哈
zcw159357
2016 年 4 月 21 日
server
{
listen 80;
server_name abc.hello.com;

location / {
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://192.168.1.12:8080/abc/;

}

location /abc/ {
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://192.168.1.12:8080/abc/;
rewrite "^/abc/(.*)" /$1 permanent;
}

access_log /var/log/nginx/abc_access.log;
error_log /var/log/nginx/abc_error.log;
}

试下这个 感觉是你 /abc/ 那个站点里的 url 都写了 /abc/aa.htm 这种 搞个重定向 应该就可以不会出现 /abc/了
brando
2016 年 4 月 21 日
楼主去画拓扑图去了。
brando
2016 年 4 月 21 日
27 楼是正解!

@zcw159357 谢谢您的 config ,稍改配置也解决了我的 500 的错误!
另外也谢谢其他的朋友们!!!这么晚了还都在奋斗~~
zcw159357
2016 年 4 月 21 日
@brando 咦 啥 500 错误....居然还有这种效果么...
brando
2016 年 4 月 21 日
rewrite "^/abc/(.*)" /$1 permanent;
其实是我写的路径的问题, cookies 提交不正确,不是您的写法配置问题: D
xiaoz
2016 年 4 月 21 日
@XiaoxiaoPu 正解,楼主可以试试。
brando
2016 年 4 月 22 日
困惑了,今天发现还是跳回到了 abc.hello.com/abc/
brando
2016 年 4 月 22 日
修改之后解决重定向,但又发现 Jessionid 获取有问题,天,,,都什么问题。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://study.congcong.us/t/272654

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX