wwwcount.cgi Ver3.02でホストを取得するには

[上に] [前に] [次に]
さる 1999/07/29(木) 02:46:58
wwwcount.cgi Ver3.02を使って、アクセスログをメール送信
しているのですが、サーバーのperlのパージョンが上がってから
ホスト名が全く表示されずIPアドレスだけが表示されるようになりました。
これはバージョンの違いでどうにもならないのでしょうか?。
ちなみにperlのversionは5.004です。IPだけだと調べたい時に
とっても不便というか手間です。

ひ*** 1999/07/29(木) 04:21:59
>サーバーのperlのパージョンが上がってから
Perlのバージョンが上がったからではありません。
HTTPdの設定を変えたからです。
...まぁそれはいいんですが。

http://www.tohoho-web.com/wwwperl2.htm#gethostbyaddr
を参考にして、327行目の
if ($ENV{'REMOTE_HOST'} ne $ENV{'REMOTE_ADDR'}) {
print(OUT "HOST  = [ $ENV{'REMOTE_HOST'} ]\n");
}
を以下のように書き換えてみてください。

$host = gethostbyaddr(pack("C4", split(/\./, $ENV{'REMOTE_ADDR'})), 2);
print(OUT "HOST  = [ $host ]\n");

デフォルトでは、$host は使われていませんが、
あなたが改造をして $host を使っていたら、変数名を任意で変えて下さい。

さる 1999/07/30(金) 01:26:04
[[解決]]
ありがとうごじぇーました。
解決しました。とっても助かりました。

[上に] [前に] [次に]