HTMLファイル読み込み・条件指定アクセス拒否
#! /usr/local/bin/perl
@arr = ( # アクセス拒否条件
# 特定ユーザーエージェント拒否の場合
[$ENV{'HTTP_USER_AGENT'}, "DoCoMo"],
[$ENV{'HTTP_USER_AGENT'}, "KDDI"],
[$ENV{'HTTP_USER_AGENT'}, "Softbank"],
# 特定IPアドレス拒否の場合
[$ENV{'REMOTE_ADDR'}, "123.456.789.123"],
# 特定リンク元拒否の場合
[$ENV{'HTTP_REFERER'}, "http://www.webings.net/"]
);
for($i = 0 ; $i < @arr ; $i++) {
if($arr[$i][0] =~ $arr[$i][1]) {
print "Status: 403 Forbidden\n\n"; # ステータスコード403を返す
exit;
}
}
print "Content-type: text/html\n\n"; # HTMLファイル読み込み
open(FILE, "<../../sample/sample1.html");
eval{ flock(FILE, 1) };
while($html = <FILE>){
print $html;
}
close FILE;
exit;
〔 実行する 〕