我有几个应用程序位于:
http://www.foo.com:80
http://www.bar.com:42
http://www.baz.com:1337
我试图用一台nginx机器反向代理。我现在面临的问题是这些应用程序正在请求名称相同但内容不相同的文件:
location /bootstrap.css {
proxy_pass http://www.foo.com:80/bootstrap.css;
}
location /bootstrap.css {
proxy_pass http://www.bar.com:42/bootstrap.css;
}
location /baz {
proxy_pass http://www.baz.com:1337;
}
location /foo {
proxy_pass http://www.foo.com:80/;
}
我是否可以重新编写来自特定应用程序服务器的所有响应以指向它的应用程序子文件夹?
例如:重定向
http://www.foo.com:80/*
到
/foo
答案 0 :(得分:0)
您可以设置以下内容:
location /foo {
proxy_pass http://www.foo.com:80;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
但是,您的应用程序foo可能需要知道这一点。例如,见post。
修改强>
,Nginx可以做你想做的事