Biz aynı PHP webapp (LAMP) çalıştıran birden çok yük dengeli webserver makineleri var ve ben her sunucuda biraz farklı kod çalıştırmak istiyorum (for testing purposes). Ben böyle bir şey yapmak için $_SERVER['SERVER_ADDR']
süper global kullanmak umuyordum:
if ($_SERVER['SERVER_ADDR'] == 'XXX.XXX.XXX.XXX') {
echo "Do one thing";
} elseif ($_SERVER['SERVER_ADDR'] == 'YYY.YYY.YYY.YYY') {
echo "Do something else";
}
Iki makine $_SERVER['SERVER_ADDR']
'127.0.0.1' ayarı çünkü ne yazık ki, bu işe yaramazsa. $_SERVER['SERVER_ADDR']
kendi genel IP adresi olarak ayarlanır, böylece Onları nasıl yapılandırabilirsiniz?
Ben refererence için şu anda bu gibi görünüyor bu yüzden sorunu /etc/hosts
ile ilgili bir şey olabilir tahmin ediyorum:
127.0.0.1 localhost.localdomain localhost
::1 localhost6.localdomain6 localhost6
XXX.XX.XX.XX blahblah
Update...
Oops! Ben web sunucularının önünde nginx ters proxy dikkate ihmal. Bu web sunucularının tüm trafik nedeniyle nginx conf aşağıdaki satırı için nginx itibaren gelen:
location / {
root /var/www/staging/current;
proxy_pass http://localhost:8880;
}