■掲示板に戻る■ 全部 1- 101- 201- 301- 401- 501- 601- 701- 801- 901- 最新50 [PR]ぜろちゃんねるプラス[PR]  
レス数が1000を超えています。残念ながら全部は表示しません。

ぜろちゃんねるアシストスクリプト

388 :名無しさん@ぜろちゃんねる:04/03/12 08:58 ID:???
こんなのでどうだ?

#!/usr/local/bin/perl

# 使い方: http://このCGIを設置したパス/このCGI名/ジャンプ先
#
#    ジャンプ先は http:// 省略も可。(省略時はhttp://とみなす)
#
#  例 http://www.example.com/cgi-bin/jump.cgi/example.net/hoge.html
#  例 http://www.example.com/cgi-bin/jump.cgi/http://example.net/bbs.cgi?start=1&end=5
#  例 http://www.example.com/cgi-bin/jump.cgi/ftp://example.net/
#
# 警告リストを使うなら、このcgiと同じディレクトリにファイル名 warning.cgi でUPする。
#
# 書式: URL<>警告文 (1行ずつ。URLはhttp://なども含めて書くこと)
#
#  ※ リストのURLとジャンプ先URLは先頭から比較され、完全一致または
#    長いほうのURLに短いほうのURLが含まれていれば警告が出る。
#

389 :名無しさん@ぜろちゃんねる:04/03/12 09:00 ID:???
print "Content-Type: text/html\n\n";

$url = $ENV{'PATH_INFO'};
$url =~ tr/+/ /;
$url =~ s/%([0-9A-Fa-f][0-9A-Fa-f])/ pack('H2', $1) /eg;
$url =~ s/(\w+)?:\/\///g;
$url =~ s/(\w+)?:\///g;
$prot = $1;
$len = length($url);
if ($len % 2 == 0) {
 $dmy1 = substr($url, 0, $len / 2);
 $dmy2 = substr($url, $len / 2);
 if ($dmy1 eq $dmy2) {
  $url = $dmy1;
 }
}
$url = $prot? "$prot:/" . $url: 'http:/' . $url;
$url .= $ENV{'QUERY_STRING'}? "?$ENV{'QUERY_STRING'}": '';
if (-e "./warning.cgi") {
 open (WARN, "./warning.cgi") || &err;
 while(<WARN>){
  ($warurl, $message) = split (/<>/, $_);
  if (index ($warurl, $url) == 0 || index ($url, $warurl) == 0) {
   $warning = "参考:以下をWarningリストで発見しました<br><b>$warurl</b> $message";
   last;
  }
 }
 close (WARN);
}

390 :名無しさん@ぜろちゃんねる:04/03/12 09:00 ID:???
print <<HTML;
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="ja">
<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=Shift_JIS">
<title>別のページにジャンプしようとしています。</title>
</head>
<body>
<p><b><a href="$url" target="_top">$url</a></b></p>
別のサイトにジャンプしようとしています。宜しければ上記のリンクをクリックしてください
<br>リンク先はブラクラやウイルスなど危険なサイトのこともあります。<br>
当サイトではリンク先で起きた損害などについて一切責任を負いません。<br>
<p>$warning</p>
<a href="http://www.jah.ne.jp/~fild/cgi-bin/LBCC/lbcc.cgi?url=$url">ブラクラチェッカー</a><br>
<a href="view-source:$url">\ソ\ースを\表\示</a><br><br><hr><br>
広告<br>
</body>
</html>
HTML

exit;

sub err {
 print 'ERROR';
 exit;
}

209KB
READ.CGI - 0ch+ BBS 0.7.5 20220323
ぜろちゃんねるプラス