<< 期間限定サービス || FはフォッサマグナのF ≫

MT4.1スパムコメント対策

| | コメント(0) | トラックバック(0) |[] 1441  

08060901.jpgスパムコメントとか、ピねばいいのに

きっと今スパムコメント送ってくれている外国の友達は、mt-comments.cgiに直接語りかけているに違いない。

という憶測の元、とりあえずmt-comments.cgiのファイル名を変更(ponpurin.cgi)

ついでに、ちょくちょくスパムトラックバックも飛んでくるので

きっと今スパムトラックバックを送ってくれている外国の友達は、mt-tb.cgiに直接語りかけているに違いない。

という憶測の元、mt-tb.cgiのファイル名を変更(peppekepe.cgi)

それからmt-config.cgiにそのように変更した旨記述。

CommentScript    ponpurin.cgi
TrackbackScript    peppekepe.cgi

これで止まらないようならもうちょっと考えよう。

あざ笑うかのように速攻でスパムコメントが送られてきたので

JavaScriptを使ってスパムによるCGIの過負荷を防ぐ - Open MagicVox.net

を実行。

MT4.1の場合、テンプレートモジュールの中の[コメント入力フォーム]を

<MTIfCommentsAccepted>
<div class="comments-open" id="comments-open">
    <h2 class="comments-open-header">コメントする</h2>
    <div class="comments-open-content">
    <MTIfRegistrationAllowed>
            <div id="comment-form-external-auth">
                <script type="text/javascript">
                <!--
                <MTIf name="comment_preview_template">is_preview = true;</MTIf>
                writeCommenterGreeting(commenter_name, <$MTEntryID$>, <$MTEntryBlogID$>, commenter_id, commenter_url);
                //-->
                </script>
            </div>
    </MTIfRegistrationAllowed>
        <form method="post" action="<$MTCGIPath$><$MTCommentScript$>boku-bot.cgi" name="comments_form" id="comments-form" onsubmit="if (this.bakecookie.checked) rememberMe(this)">
     <input type="hidden" name="static" value="1" />
            <input type="hidden" name="entry_id" value="<$MTEntryID$>" />
            <input type="hidden" name="__lang" value="<$MTBlogLanguage$>" />
            <div id="comments-open-data">
                <div id="comment-form-name">
                    <label for="comment-author">名前</label>
                    <input id="comment-author" name="author" size="30" value="<MTIf name="comment_preview_template"><$MTCommentAuthor encode_html="1"$></MTIf>" />
                </div>
                <div id="comment-form-email">
                    <label for="comment-email">電子メール</label>
                    <input id="comment-email" name="email" size="30" value="<MTIf name="comment_preview_template"><$MTCommentEmail encode_html="1"$></MTIf>" />
                </div>
                <div id="comment-form-url">
                    <label for="comment-url">URL</label>
                    <input id="comment-url" name="url" size="30" value="<MTIf name="comment_preview_template"><$MTCommentURL encode_html="1"$></MTIf>" />
                </div>
                <div id="comment-form-remember-me">
                    <label for="comment-bake-cookie"><input type="checkbox" id="comment-bake-cookie" name="bakecookie" onclick="if (!this.checked) forgetMe(document.comments_form)" value="1" />
                        ログイン情報を記憶</label>
                </div>
            </div>
            <div id="comments-open-text">
                <label for="comment-text">コメント <MTIfAllowCommentHTML>(スタイル用のHTMLタグを使うことができます)</MTIfAllowCommentHTML></label>
                <textarea id="comment-text" name="text" rows="15" cols="50"><MTIf name="comment_preview_template"><$MTCommentBody autolink="0" sanitize="0" convert_breaks="0" encode_html="1"$></MTIf></textarea>
            </div>
            <MTIfNonEmpty tag="MTCaptchaFields">
            <MTIfCommentsAccepted><MTIfRegistrationAllowed><MTElse><$MTCaptchaFields$></MTIfRegistrationAllowed></MTIfCommentsAccepted>
            <div id="comments-open-captcha">
            </div>
            </MTIfNonEmpty>
            <P style="FONT-SIZE: 20pt;color:red"><noscript>        コメントを投稿するにはJavaScriptを有効にしてください       </noscript></p>
            <div id="comments-open-footer">
                <input type="submit" accesskey="v" name="preview" id="comment-preview" value="確認" />
                <input type="submit" accesskey="s" name="post" id="comment-submit" value="投稿" />
    <MTIf name="comment_preview_template">
                <input type="button" name="cancel" id="comment-cancel" value="キャンセル" onclick="window.location='<$MTEntryPermalink$>'" />
    </MTIf>
            </div>
        </form>
   <script>
     // 本来の正しいURLに書き戻します。
     // ブラウザのJavaScriptが有効になっている必要があります。
     document.comments_form.action = "<$MTCGIPath$><$MTCommentScript$>";
   </script>

    </div>
</div>
</MTIfCommentsAccepted>

こんな感じで書き換え。

ついでに

コメントを送信した時に、投稿者情報が保存されてないような気がしたので一応対策。

小粋空間: Movable Type 4.1 でコメント投稿者情報が保存されない不具合について

トラックバック(0)

このブログ記事を参照しているブログ一覧: MT4.1スパムコメント対策

このブログ記事に対するトラックバックURL: http://www.smilebanana.com/mt/mt-tbx.cgi/1440

コメントする

このブログについて

  • 管理人はbananaです。
  • 連絡その他は

    まで。