21日に, spam_filter.php を設置したのだが,効果がないように見えた。
pukiwiki.ini.php に設定した
define('SPAM_FILTER_COND', '#atag()');
を,直接 spam_filter.php に移して,
define('SPAM_FILTER_COND', '#atag() or #onlyeng()');
さらに
define('SPAM_FILTER_COND', '#useragent() or #filename() or #atag() or (#onlyeng()
and #urlnum()) or #urlnsbl()');
としてみたが,効果なし。少し,いじけた。
ところが,夜,いじいじとFTP接続して PukiWiki の関係ファイルを見ていて, dns_get_ns.cache がちゃんと記録されているのに気づいた。これがちゃんと残ってるということは, spam_filter.php がまともに動いているということではないか。少し,機嫌を直して,ログってたスパムをもう一度調べてみた。
今どきの流行りで,英文中に全角文字が含まれていた。このせいですり抜けてたのかと, spam_filter.php のオプションのひとつ, Akismet を有効にした。 WordPress 使いならおなじみの,あの Akismet である。 spam_filter.php 内で,
define('SPAM_FILTER_COND', '#useragent() or #filename() or #atag() or (#onlyeng()
and #urlnum()) or #urlnsbl() or (#onlyeng() and #url() and #akismet())');
// Akismetで取得する。APIキー
define('SPAM_FILTER_AKISMET_API_KEY', '自分の Akismet API キー');
define('SPAM_FILTER_AKISMET_PLUGIN_NAME', 'edit,comment,tracker,article');
これで,ピタッと,スパムが止まった。「黙って当てれば,ぴたりと止まる」,ナンチャッテ。
その後,掲示板のスタイルをいろいろいじっていたのだが,どうにも,ピンと来ない。結局, #article のプラグイン内設定をいじるだけに落ち着いた。元に戻ったわけだ。しかし,プラグイン設定は,『freeWiki』FTP機能提供開始のおかげでいじれるようになったわけだから,初回の設定時よりは,ずいぶんましだ。
ということで,今回はここまで。o6asanの掲示板