counter.cgi

来自「嵌入式WEB」· CGI 代码 · 共 27 行

CGI
27
字号
#!/usr/bin/perl -wTuse strict;use Fcntl qw( :DEFAULT :flock );use DB_File;use constant COUNT_FILE => "/usr/local/apache/data/counter/count.dbm";my %count;my $url = $ENV{DOCUMENT_URI};local *DBM;print "Content-type: text/plain\n\n";if ( my $db = tie %count, "DB_File", COUNT_FILE, O_RDWR | O_CREAT ) {    my $fd = $db->fd;    open DBM, "+<&=$fd" or die "Could not dup DBM for lock: $!";    flock DBM, LOCK_EX;    undef $db;    $count{$url} = 0 unless exists $count{$url};    my $num_hits = ++$count{$url};    untie %count;    close DBM;    print "$num_hits\n";} else {    print "[Error processing counter data]\n";}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?