同じPHPWebアプリ(LAMP)を実行している複数の負荷分散されたWebサーバーマシンがあり、各サーバーでわずかに異なるコードを実行したいと思います(テスト目的で)。$_SERVER['SERVER_ADDR']
私はこのようなことをするためにスーパーグローバルを使用することを望んでいました:
if ($_SERVER['SERVER_ADDR'] == 'XXX.XXX.XXX.XXX') {
echo "Do one thing";
} elseif ($_SERVER['SERVER_ADDR'] == 'YYY.YYY.YYY.YYY') {
echo "Do something else";
}
$_SERVER['SERVER_ADDR']
残念ながら、両方のマシンが「127.0.0.1 」に設定されているため、これは機能しません。$_SERVER['SERVER_ADDR']
パブリックIPアドレスに設定されるように構成するにはどうすればよいですか?
この問題は何か関係があるのではないかと推測している/etc/hosts
ので、参照用に現在は次のようになっています。
127.0.0.1 localhost.localdomain localhost
::1 localhost6.localdomain6 localhost6
XXX.XX.XX.XX blahblah
アップデート...
おっと!Webサーバーの前でnginxリバースプロキシを検討することを怠りました。これらのWebサーバーへのすべてのトラフィックは、nginx confの次の行が原因で、nginxから到着します。
location / {
root /var/www/staging/current;
proxy_pass http://localhost:8880;
}