#!/usr/bin/perl

print "Content-type: text/html", "\n\n";
print"<html><body>\n";
print"additionals<br>";
print"<a href=java/cl.html>clock</a><br>";
print"<a href=java/now.html>fade-io</a><br>";
print"<a href=java/col/col.html>colpko</a><br>";
print"<a href=java/ox/ox.html>ox</a><br>";
print"<a href=java/keisan/keisan.html>calculate</a><br>";
print"ソースは凡そ同名で同場所にあります";
print"</body></html>"; # InternalServerErrorの防止。

$data = 'accesslog.dat';
$max  = '100';

open(LOG,"$data");
@lines = <LOG>;
close(LOG);

$i = 0;
foreach $line (@lines){ # @lines から要素を取り出して $line に入れていく。
    $i++;
    if ( $i == $max ) { last; }
    push(@new,$line); # 配列 @new に新要素 $line を付加。（要素数が１つ増加）
}

( $sec,$min,$hour,$day,$mon,$year,$wday ) = localtime(time);
if ($sec < 10) { $sec = "0$sec";  }
if ($min < 10) { $min = "0$min";  }
if ($hour< 10) { $hour= "0$hour"; }
if ($day < 10) { $day = "0$day";  }
$mon++;
$time = "$mon/$day $hour:$min:$sec";

$browser = "unknown"; # 変数内容の初期化（Unknown時のために必要）。
# 取得する環境変数
$add  = $ENV{'REMOTE_ADDR'};          # あいぴー
if( $add eq "210.159.5.4"){ exit; }   # 除外ＩＰ
$host = $ENV{'REMOTE_HOST'};          # ほすと
$benv = $ENV{'HTTP_USER_AGENT'};      # ぶらうざ
$pre  = $ENV{'HTTP_REFERER'};         # 直前に参照してたページのＵＲＬ。
$hard = $ENV{'HTTP_USER_AGENT'};      # ハード情報の取得。
chop($benv);
chop($hard);
if($hard =~ s/MSIE/IE/){;}
if($hard =~ s/Mozilla./M/){;}       # 「.」は任意の一文字に対応する。
if($hard =~ s/.compatible;.//){;}   # 余分な情報を除去する。
if($hard =~ s/Windows./Windows/){;} # 余分な空白を除去する。
if($hard =~ s/;//){;}               # 「;」を除去する。

#$str= 'abcdefg'; # 文字列置換の例
#if($str =~ s/abc/xyz/){ print 'abc is replaced with xyz.'; }

# ブラウザの判断
if($benv =~ /MSIE/){
    $browser="InternetExplorer";
}else {
    $browser="Netscape";
}

$value = "$time $add $host $browser $hard $pre \n";
unshift(@new,$value);
				
open(LOG,">$data");
print LOG @new;
close(LOG);

exit;

