2011-12-18 7 views
1

なぜクライアントIPアドレスをファイルに書き込まないのか分かりません。PHPがクライアントIPをファイルに書き込んでいない

<?php 
$myFile = "ips.txt"; 
$fh = fopen($myFile, 'a') or die("can't open file"); 
fwrite($fh, $_SERVER['REMOTE_HOST']); 
fclose($fh); 
echo $_SERVER['REMOTE_ADDR']; 


?> 

ありがとうございます。

+3

'REMOTE_HOST'!=' REMOTE_ADDR' –

+0

REMOTE_HOSTには、REMOTE_ADDR内のip(逆方向DNSルックアップによって取得)のホスト名が含まれています。 Apacheを使用している場合は、ホスト名を取得するためにHostnameLookupsをオンにする必要があります。 それ以外の場合は、fwriteコマンドでREMOTE_HOSTをREMOTE_ADDRに変更するだけで、必要なものがすべてipになる場合があります。 –

+0

echo $ _SERVER ['REMOTE_HOST'];作品ですか? – SlavaNov

答えて

1

fwrite($fh, $_SERVER['REMOTE_ADDR']);

なぜecho $_SERVER['REMOTE_ADDR'];が機能する場合は、 fwrite($fh, $_SERVER['REMOTE_HOST']);も必要ですか?

まずecho $_SERVER['REMOTE_HOST'];を試して、何かが出力されているかどうかを確認してください。

私の推測:私が最初に言ったように、_HOSTから_ADDRをfwriteに変更してください。

関連する問題