【スターサーバー】【Perl】テキストカウンターを動作させる

  • 投稿 : 2018-10-09
#!/usr/bin/perl
use CGI::Carp qw(fatalsToBrowser);

print "Content-type: text/html; charset=UTF-8\n\n";

open(FD, "+< counter.txt"); # 読み書きモードで開く
flock(FD, LOCK_EX);  # ファイルをロックする

$count = <FD>;
$count++;

seek(FD, 0, 0); # 書き込み位置を先頭に戻す
print FD $count;
close(FD);

print "<html>\n";
print "<body>\n";
print "<p>あなたは". $count. " 人目のお客様です</p>\n";
print "</body>\n";
print "</html>\n";

上記をcounter.cgiとして、UTF-8、改行LFで保存して転送。

counter.cgi パーミッションを755
counter.txt パーミッションを666

上記で動作するかと思います。

http://ponk.jp/perl/bbs/counter
http://www.tohoho-web.com/wwwcgi8.htm

カウンターに関しては1つ目のリンクを、ファイルのロックに関しては2つ目のリンクを参考にしました。

当サイトの著作物(ソフトウェア及び文書)は全てMIT Licenseとします。改造・再配布・商用利用、ご自由にどうぞ。
お問い合わせ - ポンクソフト

参考にしたカウンターのライセンスはMIT Licenseとなってます。

スポンサーリンク