我有一个nginx服务器充当我的apache服务器的负载均衡器.我正在使用子域,我的代码依赖于HTTP_HOST值来执行正确的任务.
当我发出请求说:http://get.example.com一旦转发,apache上的HTTP_HOST就变成了example.com.
我的问题是如何让它与原始请求保持一致?
这是我的nginx配置:
upstream example.com {
server 192.168.2.1:8909 weight=2;
server 192.168.2.2:8909 weight=1;
server 192.168.2.3:8909 weight=1;
}
server {
listen 80;
location / {
proxy_pass http://example.com;
}
}
我尝试添加多个proxy_pass,每个子域一个,它似乎不起作用.
最佳答案
您需要传递HTTP Host标头.将其添加到相关位置:
proxy_set_header Host $host;
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。