コメントスパム問題は、MovableTypeがブロガーの間で多く利用されているためでしょうか。MovableTypeのコメント機能を解析したスパマー業者達がコメントスパムプログラムを作成して自動的にお決まりの勝手なコメントを流し込んでくれます。コメントを悪用してスパム広告の代りにする問題も多発してきました。
その多くがコメントスパム(スパムコメントとも言いますが)として、不要なコメントを、MovableType の comments.cgi へ直接流し込むスクリプトで、多くが英文のポーカーとかを紹介するコメントスパム行為を行うものです。
日本でもコメントスパムの標的して多くのブログサイトが被害を受けていますが、対策として日本語しか受け付けないようにするアイデアで、コメントスパム対策が行われているようです。しかしこれはある意味ブログの鎖国を行う事になってしまうのかと思っていますし、実際、海外の方からも善良なコメントをいただく事もあるので、もっといい方法はないものでしょうか?
スパマーの目的は広告ですから、コメント欄に適当なほめ言葉『 Your site is great.』などと一瞬うれしくなるコメントを入れるのですが、URL欄には広告先のURLがちゃかりセットされています。しかしこの場合でも誰かがクリックする必要がなくて、多くのサイトにリンクされている事でそのページ(サイト)が検索サイト上位に位置することができれば、それだけで十分効果が期待できる訳です。
ではURL欄を無くせば?と思うでしょうが、これは善良な方々からのコメントをですから、性善説ではありませんが、悪い奴らのために善良な方のページにリンクしないのは失礼なことでしょう。
さて、スパマーとの戦いにおいて、コメントスパム最善の策はないかと、多々国内外のブロガーの方々のアイデアやプラグインを見てみました。探してみると、「Comment Spam Quick Fix」に素敵なアイデアのコメントスパム対策が紹介されていました。
その内容とは、コメント投稿時にユニークなパラメータを付加することで、そのパラメーターが付加されたコメント以外は、プログラムでコメントを受付けないという仕組みです。この仕組みの良いところは、善良な手動でコメントを入力していただける方々は何の不自由もなく利用でき、プログラムで勝手に流し込むやからからは守る事ができるところでしょう。仕組みは単純ですが効果は絶大!
しかし難点なのは、Movable Typeを自力でカスタマイズしなければいけない事でしょう。プログラムスキルをお持ちの方ならば何の苦もなくできることでも、万人ができる訳ではありません。
可能な限りポイントを明確にして記載してみました。
This approach will require you modifying the following MT templates: この対策を行うには、まず以下のMTテンプレートにパラメーターを付加する必要があります。
Individual data entry Comment Listing Template Comment Preview Template Comment Error Page
You’ll be adding the following field, on the line before the </form> tag: 上記のテンプレートにある<form>と</form>の間にinputタグでパラメーターを追加します。 パラメーターを複数セットすると効果的です。
このname="spammer"、name="spamming"は、各自ユニークなパラメータセットしてから、<form>と</form>にセットしてください。
※MT3.x以降を利用の場合には、コメントのPreview時の表示コマンドがコード内に埋め込まれています。 ※MTをセットしたcgiディレクトリー lib > MT > Template > Context.pm を修正する必要があります。 ※MT3.1xの場合、ライン1265、1347の次に上記inputパラメーターをセットする必要があります。
コメントプレビューのメッセージで日本語は利用できないため、残念ながら英語表記のままとなります。
Next, open your mt-comments.cgi (or mt-comments.pl) file and add the following code just after the “use strict;” line: 次に、mt-comments.cgi (または、mt-comments.pl) の"use strict;"文のすぐ下に以下を追加します。
次に、mt-comments.cgi (または、mt-comments.pl) の"use strict;"文のすぐ下に以下を追加します。
use CGI qw(:standard); if ($ENV{’REQUEST_METHOD'} eq "POST") { my $data = param('spammer'); my $data = param('spamming'); die unless ($data); }
spamme、spammingは必ずユニークな独自のパラメータとしてください。これを多くの方が同じパラメータを利用しているとスパム業者が解析して、多々スクリプトで流す行為がまた横行してしまいます。
このカスタマイズは非常に効果も高く、改造のリスクをcgiをバックアップしながら行えば、ある程度見よう見まねで出来ると思います。
Six Apartには、mt.cfgなど初期設定時にユニークなパラメーターをセットしておけば、自動でcgiテンプレートとcgiを繋ぐ隠しコードにセットしてくれるような仕組みを導入してもらいたいものです。
これで快適なブログライフを安心して楽しみたいものですね。