POTI-boardのURL欄の文字列をチェックしてフィルタリングする

POTI-boardの
//拒絶する文字列
$badstring = array("foo","bar");
は、URL欄をチェックしていません。
URL欄の文字列をチェックして拒絶する設定項目を作る事もできますが…。
config.phpの設定項目が増えて、乱雑になるのはあまり好ましい事ではないのかもしれません。
しかし、お絵かき掲示板のURL欄に
.ru
と入力しているのはコメントスパム位なので、設定で弾く事ができたほうがいいような気もします。
設定項目を増やしたくない…だったら設定したい人は本体を改造して…。
POTI-board改とテンプレートシリーズ
から、php7と、PaintBBS NEOに対応したPOTI-boardをダウンロードし、potiboard.phpの860行目付近の
//本文へのURLの書き込みを禁止
if(DENY_COMMENTS_URL && preg_match('/:\/\/|\.co|\.ly|\.gl|\.net|\.org|\.cc|\.ru|\.su|\.ua|\.gd/i', $com)) error(MSG036,$dest);
の下に
//URL欄で拒絶する文字列
if(preg_match('/\.ru$|\.su$|\.ua$/i',$url)) error(MSG037,$dest);
を追加すると…。
.ru
.su
.ua
で終わるURLを拒絶します。
cheapautoinsurancefoo.pw
autoinsurancebar.pw
autoinsurancebaz.top

コメントスパムのURLの一部を変更したサンプルです。
autoinsurance.*\.(top|pw)$
で3パターンすべて拒絶。実際に使うとしたら
//URL欄で拒絶する文字列
if(preg_match('/\.ru$|\.su$|\.ua$|autoinsurance.*\.(top|pw)$/i',$url)) error(MSG037,$dest);
でしょうか。

この記事へのコメント

コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

※ブログオーナーが承認したコメントのみ表示されます。