请教 nginx 跳转 写法

2015 年 3 月 24 日
 ecapsul

目的就是为了用一个域名多级目录跳转到不同服务器
比如
访问www.test.com/a 跳转到内网服务器192.168.0.1:8080
访问www.test.com/b 跳转到内网服务器192.168.0.2:8080

尝试了很多次,都不成功,特来求助。

server {
 listen 80;
    server_name www.test.com;
     location /a/ {
          proxy_set_header X-Real-IP $remote_addr;
          proxy_set_header Host $host;

          proxy_set_header X-Forwarded-For $remote_addr;
          proxy_pass http://192.168.0.1:8080/;
        }
     location /b/ {
          proxy_set_header X-Real-IP $remote_addr;
          proxy_set_header Host $host;

          proxy_set_header X-Forwarded-For $remote_addr;
          proxy_pass http://192.168.0.2:8080/;
        }

}

7510 次点击
所在节点    NGINX
25 条回复
lujiajing1126
2015 年 3 月 25 日
@hging rewrite至少需要两个参数。。第一个参数是你要把哪部分改写。。
晕- -
ksupertu
2015 年 3 月 27 日
a 和b那里把最后一个斜杠删了
location /a {
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;
rewrite ^/openvpnmonitor/(.*)$ /$1 break;
proxy_pass http://192.168.5.198:81;
}
ksupertu
2015 年 3 月 27 日
上一条rewrite那里写错了,是a,忘记改了……

a 和b那里把最后一个斜杠删了
location /a {
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;
rewrite ^/a/(.*)$ /$1 break;
proxy_pass http://192.168.5.198:81;
}
ecapsul
2015 年 4 月 22 日
最后变相搞定了,我把nginx换了,也不用路由做反向代理了,而是转到内网一台机器上的apache做了反代,目前一切工作如预期的,完全满足了自己的要求,再次感谢各位
ruanjf
2015 年 8 月 5 日
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.0.1:80;

}



location /fileCenter
{

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.0.2:80/fileCenter;


}

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

https://v2ex.ih06.com/t/179022

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

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

© 2021 V2EX