PHPで、リモートホスト名を取得したい。
だけど公式マニュアル通り、$_SERVER['REMOTE_HOST']をしても空が却ってくるばかりで取得できない。
そんな場合、Apacheのhttpd.confを確認する。
httpd.confの場所
httpd.confは、ここら辺にある。
CentOS,RHEL,Fedora | /etc/httpd/conf/httpd.conf |
Debian | /etc/apache2/httpd.conf |
httpd.confの設定を確認(変更)
「HostnameLookups」の設定を確認する。
Offならば、Onに変更。
HostnameLookups Off
↓
#HostnameLookups Off
HostnameLookups On
httpd.confを修正したら、忘れずにリスタート。
リスタート
/etc/init.d/httpd restart
これでもダメならば・・・
これでダメなら、PHP関数を使用して、IPから取得する方法がある。
<?php
$host = gethostbyaddr($_SERVER['REMOTE_ADDR']);
echo $host;
?>