Yakumo BBS Scriptについて
14:10 04/03(火) 23:43 lgnqZJaR0
ありがとうございます。
実は、10年前に位に拾ってきたEUCタイプのスレッドフロート掲示板を運営してまして、
あれこれ改造しつくして??の状態でして、ログの移転ができればと考えてます。

>うまく実装できればNGログが膨らまなくて良さそうです。
 スパムは、CGIで弾いてもお構いなしで連投してきますし、.htaccessで弾くのが一番です。


>●IPアドレスの表示・非表示の切替
これは、一般のスレ表示の時です。荒らされた時に、その荒らしのIPを、1レス単位で晒したいんです。
ですが、1レス編集機能が付けば、管理人が書き込めるから不要でした。

>●URLの 自動リンク
何の挟むかは、各自の自由で良いかと。
ただ、何を挟むかは、携帯とPCで別けて頂けるとGoodです

 jump.php
<?php
/* アンカーは動作しませんが、これで十分かと。
http://www.*********/jump.php?p=http://www.yahoo.co.jp
*/
$p = $_SERVER['REQUEST_URI'];
$p = substr($p,××); //××は http...p= までの文字数
echo "<a href=\"" .$p ."\">" .$p ."</a>";


>●板/.htaccess (又は掲示板トップ)への

if(こいつは100%スパム野郎){
our $htaccess; #htaccessファイルの場所
my $deny = 'deny from ' . $ENV{'REMOTE_ADDR'} . ' "#' .$userhost_ddat.' "' . "\n";
sysopen (OUT, $htaccess,O_WRONLY|O_APPEND);
print OUT $deny;
close (OUT);
}



私の掲示板でスパ避けに使用してるCGIです。
片っ端から name で送ってくるスパムもありました
###### 存在しないFORMデータのチェック ##########################
#
# 戻り値 存在しないFORMの内容:$form_dtl(なければ空白)
# name:$non_name (なければ空白)
# 存在しないFORMデータ
our @spam_form_name = ('url','password','email','upfile','COMMENT');
sub spam_form_data{
my $non_name;
my $form_dtl = '';
foreach $non_name (@spam_form_name) {
if ($FORM{$non_name} ne '') {
Error("$non_name = $FORM{$non_name} <br>アレレレレ、なんかへんですよー");
$form_dtl = $FORM{$non_name};
last;
}
}
return($form_dtl,$non_name);
}
1-AA