PukiWikiのスパム対策 「akismet_filter.php」

最近N64エミュレーターwikiに英語のスパムが結構な量投稿され、
消してIPをはじくようにしておいても、しばらくするとまたスパムが投稿されて
すごく困っていました。
何か対策内かなーと探してみたら
「akismet_filter.php」というのがあってこれを導入すれば
ほぼスパムを防止できるそうな。

  • PukiWiki/Akismetによるspam(スパム)防止機能 – アークウェブシステム開発SandBox
  • 導入するには、まず上記のサイトから「akismet_filter.php」と
    次のサイトから「Akismet.class.php」を入手します。

  • akismet-php4
  • 次に下記サイトからユーザー登録をしてAPIキーを取得します。
    商用利用しない限りは無料で利用できます。

  • API Keys ? WordPress.com
  • キーを取得したら「akismet_filter」の下の部分に
    取得したAPIキーを記入します。

    //Akismetで取得する。APIキー
    define(‘API_KEY’, ‘取得したAPIキーを記入‘);

    次にpukiwikiインストールディレクトリの
    lib/plugin.phpを下のように書き換えます。
    function do_plugin_action($name)
    {
    if (! exist_plugin_action($name)) return array();
    if(do_plugin_init($name) === FALSE)
    die_message(‘Plugin init failed: ‘ . $name);
    //追記 ここから
    //Akismet Spam Filter
    require_once(LIB_DIR . ‘akismet_filter.php’);
    if ( is_spam_message($_POST, $name) == “1” )
    die_message(“Spam check failed. Plugin:$name”);
    //ここまで

    $retvar = call_user_func(‘plugin_’ . $name . ‘_action’);

    書き換えが終わったら「akismet_filter.php」と「Akismet.class.php」を
    pukiwikiのlibディレクトリにアップロードして完了。
    数日前に導入してみましたが、
    今のところスパムはぱったりなくなって
    大変満足。

    コメントを残す

    メールアドレスが公開されることはありません。 が付いている欄は必須項目です