AWS-Lambda
view release on metacpan or search on metacpan
examples/cgi/WwwCounter/wwwcount.cgi view on Meta::CPAN
$g_referer = $argv[++$i];
}
}
}
#
# ã«ã¦ã³ã¿ã¼ãã¡ã¤ã«ããã«ã¦ã³ã¿ã¼å¤ãèªã¿åºãã
#
sub readCount {
my($count) = 0;
local(*IN);
if (open(IN, "< $g_file_count")) {
$count = <IN>;
close(IN);
}
return $count;
}
#
# ã«ã¦ã³ã¿ãã«ã¦ã³ã¿ãã¡ã¤ã«ã«æ¸ãæ»ã
#
sub saveCount {
my($count) = @_;
if (open(OUT, "> $g_file_count")) {
print(OUT "$count");
close(OUT);
}
}
#
# æ¥ä»ãã¡ã¤ã«ããæçµã¢ã¯ã»ã¹æ¥ä»ãèªã¿åºãã
#
sub readLastAccessDate {
my $last_access_date;
if (open(IN, "< $g_file_date")) {
$last_access_date = <IN>;
close(IN);
} else {
$last_access_date = "";
}
return $last_access_date;
}
#
# 仿¥ã®æ¥ä»ãæ¥ä»ãã¡ã¤ã«ã«æ¸ãåºã
#
sub saveLastAccessDate {
my($now_date) = @_;
open(OUT, "> $g_file_date");
print(OUT "$now_date");
close(OUT);
}
#
# 仿¥ã®æ¥ä»ãå¾ã
#
sub getCurrentDateAndTime {
my($sec, $min, $hour, $mday, $mon, $year) = localtime(time());
my($now_date) = sprintf("%04d/%02d/%02d", 1900 + $year, $mon + 1, $mday);
my($now_time) = sprintf("%02d:%02d:%02d", $hour, $min, $sec);
return $now_date, $now_time;
}
#
# ã¢ã¯ã»ã¹ãã°ãåæåãã
#
sub clearAccessLog {
open(OUT, "> $g_file_access");
close(OUT);
}
#
# ã¢ã¯ã»ã¹ãã°ãè¨é²ãã
#
sub saveAccessLog {
my($count, $now_time) = @_;
my($addr, $host, $referer);
local(*OUT);
open(OUT, ">> $g_file_access");
# ã«ã¦ã³ã
print(OUT "COUNT = [ $count ]\n");
# æå»
print(OUT "TIME = [ $now_time ]\n");
# IPã¢ãã¬ã¹
$addr = $ENV{'REMOTE_ADDR'};
print(OUT "ADDR = [ $addr ]\n");
# ãã¹ãå
$host = $ENV{'REMOTE_HOST'};
if ($g_addr_to_host && (($host eq "") || ($host eq $addr))) {
$host = gethostbyaddr(pack("C4", split(/\./, $addr)), 2);
}
if (($host ne "") && ($host ne $addr)) {
print(OUT "HOST = [ $host ]\n");
}
# ã¨ã¼ã¸ã§ã³ãå
print(OUT "AGENT = [ $ENV{'HTTP_USER_AGENT'} ]\n");
# ãªã³ã¯å
(SSI)
$referer = $ENV{'HTTP_REFERER'};
if (($g_mode eq "text") && ($referer ne "")) {
if ($g_decode_url) {
$referer =~ s/%([0-9a-fA-F][0-9a-fA-F])/pack("C", hex($1))/eg;
}
print(OUT "REFER = [ $referer ]\n");
}
# ãªã³ã¯å
(CGI)
$g_referer =~ s/\\//g;
if ($g_referer && (!$g_my_url || ($g_referer !~ /$g_my_url/))) {
if ($g_decode_url) {
$g_referer =~ s/%([0-9a-fA-F][0-9a-fA-F])/pack("C", hex($1))/eg;
}
print(OUT "FROM = [ $g_referer ]\n");
}
( run in 0.529 second using v1.01-cache-2.11-cpan-39bf76dae61 )