
nginx をロード バランサーとして使用しようとしていますが、うまく機能しています。ただし、問題が 1 つあります。
ロード バランシング ボックスは 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
結局のところ、これは私のアプリが最初にリダイレクトするように設定されていた状況であり、それが問題の原因となっていました。