MovableType3.171jaで動作確認済みです。
package BBQ; ;######################################################################## ;### BBQ あらしお断りシステム ;### Programmed by Piroli YUKARINOMIYA ;### http://www.magicvox.net/home.php use strict; sub checkProxyList { my $RADDR = $ENV{'REMOTE_ADDR'}; $RADDR =~ /^(d+).(d+).(d+).(d+)$/; my $query_addr = "$4.$3.$2.$1.niku.2ch.net"; my $addr = join ('.', unpack ('C*', gethostbyname ($query_addr))); return $addr eq '127.0.0.2' ? 1 : 0; } 1; __END__ ;######################################################################## * Original concepts & codes http://www.otsune.com/diary/2005/10/02/3.html#200510023 http://bbq.uso800.net/ http://info.2ch.net/wiki/pukiwiki.php?BBQ</textarea> <h4 class="section">Comments.pm の修正</h4> コメントが投稿されたタイミングで、上のロジックを用いてプロクシ規制を行うためのコードを追加します。 以下を参照に <span class="filename">/cgi-bin/mt/lib/MT/App/Comments.pm</span> を修正します。 <p> <textarea class="code" cols="80" rows="12"> sub post { my $app = shift; my $q = $app->{query}; return do_preview($app, $q, @_) if $app->request_method() ne 'POST'; ;### PROXY規制 ここから追加 { use BBQ; return $app->handle_error ( '荒らし対策のため公開プロクシからの投稿を規制しています。'. '規制対象プロクシか<a href="http://sv2ch.baila6.jp/chk_proxy.cgi">こちら</a>でチェックしてください。' ) if (BBQ'checkProxyList ()); #↑プロクシ規制に引っかかった場合のエラーメッセージ } ;### PROXY規制 ここまで追加
sub ping { my $app = shift; my $q = $app->{query}; ;### PROXY規制 ここから追加 { use BBQ; return $app->_response(Error => '荒らし対策のため公開プロクシからの投稿を規制しています。'. '規制対象プロクシか<a href="http://sv2ch.baila6.jp/chk_proxy.cgi">こちら</a>でチェックしてください。' ) if (BBQ'checkProxyList ()); #' } ;### PROXY規制 ここまで追加
寄せられたコメント (全 1 件中、最新 5 件まで表示しています)
同機能(ちゅーか更に高性能)な SpamLookup というプラグインがあるようです。
http://bradchoate.com/projects/spamlookup/
しかも MovableType 3.2 からはパッケージに標準で添付されていますから
素直にこっちを使った方が手軽&便利&安全な気がします(`・ω・´)