アクセスログ
アクセスログをとるPerlプログラムをaccess.cgiとする。
access.cgiではファイルを書き込みモードで開いて、
記録を書き込み、ファイルを閉じる。
#!/usr/local/bin/perl
open(LOG,">>access.log");
#flock(LOG,2);
print LOG "$ENV{'HTTP_USER_AGENT'}\n";
print LOG "$ENV{'HTTP_REFERER'}\n";
print LOG "$ENV{'REMOTE_HOST'}\n";
close(LOG);
#flock(LOG,8);
$ENV{ }はコンピューターの環境変数を参照する連想は配列で、
ページ閲覧者の使っているブラウザ('HTTP_USER_AGENT')、
どのページから来たか('HTTP_REFERER')、
どこの場所から見ているか('REMOTE_HOST')など利用できる。
HTMLファイルには、このプログラムを呼び出すタグを記述する。
<!--#exec cgi=”access.cgi”-->
ブラウザでは、このタグを発見するとaccess.cgiを実行する。
ノートPC上では、'HTTP_REFERER'と'REMOTE_HOST'の内容は空白なので、
ファイルには空行が保存される。
この状態では、このCGIを実行しても何も表示はされないが
フォルダに「access.log」というファイルが作成され、
そこに情報が書き込まれているのでチェックしてみよう。