我正在尝试使用 nginx 作为负载均衡器,效果很好。不过有一个问题。
负载平衡盒位于 123.123.123.123,后端盒位于 456.456.456.456。因此,我有以下配置:
upstream backend {
server 456.456.456.456;
}
server {
listen 80;
server_name 123.123.123.123;
access_log off;
error_log off;
location / {
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://backend;
}
}
这很管用。我在浏览器中输入 123.123.123.123,页面就出现了。但现在浏览器中的 URL 显示http://456.456.456.456。
我是否需要使用重写规则或其他东西来保持 URL 正确?我不希望在转到不同的支持服务器时 URL 不同。我读过的所有教程都没有提到这一点。
答案1
事实证明,这是我的应用程序最初设置为重定向的情况,而这导致了问题。