MovableTypeの最近のブログ記事
だいたいの MovableType を使った Blog に設置されているサイト内検索のフォームですが、記事が増えてくるとだんだんレスポンスが重くなってきます。
それを、Ajax で解決する方法が、紹介されていました。
暴想: ココログプロとかTypepadとかMTとかブログ人とかその他のブログサービスとかでもAjaxでバックナンバーを検索するJavaScript
http://java.cocolog-nifty.com/blog/2005/12/typepadmtajaxja_c70d.html
あらたにテンプレートを作って、過去のエントリーをすべて JSON 化。読み込んで検索。
右の検索フォームから試してもらうとわかりますが、一度読み込んでしまえば、標準の検索にくらべて格段にレスポンスが良くなります。
検索の度に発生する負荷を、再構築の際にまとめてやってしまえるので、トータルで見たらサーバーに優しいかもしれません。
データを読みこみ時に、読み込み中の表示が出るとわかりやすくていいかもしれません。
prototype.js を使われているので、以下の方法と組み合わせることができそう。(ちょっと試してみたけど、あっさり挫折)
川o・-・)<2nd life - prototype.js の Ajax.Responders.register
http://d.hatena.ne.jp/secondlife/20051119/1132326795
全然関係ない余談ですが、この頃、RSSリーダーやら、Google パーソナライズド・ホームで大量に情報は入ってくるんですが、それを読むのに疲れてしまって、アウトプットできてない気がします。
すでに、同じネタで書かれてるから、いいや。とかありますし。
情報過多を整理してくれるツールが欲しいですね。
今回は、忘れないように作業記録としてメモ。
2005/12/26追記:Safariだと検索結果が文字化けするので、↓のページの関数を組み込みました。感謝。
[ajax] Safari の responseText で UTF-8 コード文字化け回避 ゆうすけブログ
http://kawa.at.webry.info/200511/article_9.html
Movable Type 用の Dreamweaver 機能拡張が公開されたようです。
今までに海外では、Movable Type Ver.2用の機能拡張はあったようですが、今回は、日本で開発され、Ver.3に対応したもの。
無料で使えるので、ちょっと触ってみました。
Macromedia - Developer Center : Dreamweaver 拡張機能 for Movable Type 3によるテンプレートカスタマイズについて
http://www.macromedia.com/jp/devnet/mx/dreamweaver/articles/movable_type_3.html
普通に、チュートリアルどおり読み込むと、こんな有様。
スタイルシートが効いてないようです。
スタイルシートの指定を見てみると
<link rel="stylesheet" href="<$MTBlogURL$>styles-site.css" type="text/css" />
となってるので当然ですね。
Dreamweaver にはデザイン時のみ有効なスタイルシートを指定できるデザインタイムという機能があるので、それで、styles-site.css を適用してやると見れるように。
これでも若干エラーがでますが、WYSIWYG のツールで Movable Type のテンプレートをいじれるので、かなり敷居が低くなった気がします。
これを機にサイトのデザインを変えてみようかな。
Dreamweaver 拡張機能 for Movable Type 3:風のまにまに号
より具体的な中身はこちらの記事がよくまとまってます。
これで、Movable Type のデザインテンプレートがより多く公開されるようになるといいですね。
前のエントリーから、はてな記法((はてなダイアリーなどで採用されている記法で、タグをより簡単に表記できます。こんな脚注も簡単。))などをMovableTypeで使える以下のプラグインを導入してます。
ささやかなる実験場の開発室(HSJ.jp): MovableType用TextFormatプラグイン mt-sukeroku-plus.pl Ver.1.00公開
http://hsj.jp/works/archives/000777.html
書くのが簡単になりますし、保存されるデータ量も少なくて済みますね。
他のところ((場所、忘れちまいました(>_<))では、はてなブックマークでその記事がどんなコメント付きでブックマークされているか表示するものも、開発されてる模様。
それから、こんなのも。
antipop2.0 - del.icio.us からはてなブックマークへデータを移行する
http://antipop.gs/mt/archives/001307.php
del.icio.us を使ってて、はてなブックマークに移行、もしくは併用したい人には役立ちますね。
うーん、改行が微妙なんだよなぁ・・・。
昨日、相当広範囲に同様のトラックバックスパムがあったようで、対策として、同じように英語のみのトラックバックをはじく設定をした方や"mt-tb.cgi"をリネームして対策した方もいらっしゃる様子。
FeedBack: "トラックバックスパム" を含む最新エントリ
早いとこ終息するといいのですが。とりあえず、「ひらがな」を含まないトラックバックをはじく対策方法もあるよってことで、お知らせトラバしてみます。
ふとメールボックスを見ると、Blogへのトラックバックが大量に来ている。
何事かと思えば、トラックバックを利用したスパム。
しかも、同じものがご丁寧に各エントリーごとに投稿されてる。
コメントスパムは日に何十件、そしてとうとうトラックバックスパムもおいでなさった。
オンラインポーカー というタイトルで オンラインカジノ を宣伝してらっしゃる。
設置を頼まれていた友人のBlogも含めて何回かくらったので傾向がわかってきた。
最新の7~10件のエントリーには投稿しない。気付かれにくくするため?
よく見てみると、一つひとつIPアドレスが違う。
おそらくトラックバックスパム用のプログラムでプロキシ経由して投稿してるんだろう。
慌てて対策を探すも、なかなか見つからない。そうしてる間にも、トラックバックは増えていく。
そうだ!
まず、トラックバックの投稿機能を止めておこう。
ということで、MovableTypeCGIディレクトリの"mt-tb.cgi"のパーミッションを変更。
ふー、これでゆっくり探せる。
対策には、"MT-BlackList"というプラグインが有効のよう。
んー、しかしリストでのブロックには限界があるし、コメントスパム対策で使ってるような「ひらがな対策」できるといいのだけど・・・。
しかし、このすでに投稿されてしまった70ものトラックバックを手作業で削除するのかい!?と気が遠くなってきた。
誰か、解決策を作ってる人はいないか?と検索。
Memo Leaves: 編集メニュー画面からコメントスパムを一括削除
http://www.ikepon.jp/~kenji/movabletype/archives/000265.html
そのものズバリ。
ありがたい。感謝。
しかも、このエントリーへのトラックバックは同じような被害にあった人のリンク集になっているので辿っていくと有益な情報が山ほど見つかる。
徒波|大量 Trackback スパムに困り果てて MT-Blacklist を導入
こちらの記事の末尾に「コメントスパムを一括削除」の一括できる件数を増やす方法が書かれています。
蛇足ですが、デフォルトでは管理画面の最新のコメント・トラックバックの表示件数は5つですが、増やせます。 (home)/lib/MT/App/CMS.pm で「## Application methods」を検索、以下を眺めれば箇所はすぐ分かります。「limit => 5」の数字部分をお好みで増やせば良し。
これで、トラックバックスパムを一気に削除してしまいましょう。
結局、コメントスパムと同様の「ひらがな対策」を"mt-tb.cgi"に組み込んでみたら動作したのでこれで様子見。
→ダメでしたorz
大量のトラックバックスパムの再爆撃をくらいました(^^;
原因を調べると、コメント用「ひらがな対策」をそのまま使ったんでは意味がないと言うことが判明。
トラックバック技術仕様書
↑のページを参考にして、チェックするバラメータを 'text'(コメント本文) から 'excerpt' (トラックバック要約)に変更することで、希望どおりに動作(要約にかな文字を含まなければ500エラー)。
今度こそ対処完了!?
※「かな対策」の詳しいやり方は載せてしまうと、海外スパマーに対策の対策をされてしまう可能性があるので、書いてません。参考にした資料の中に。それと↑の方法を組みあわせてみてください。
<参考記事>
Comment SPAM くらった: blog.bulknews.net
こういう消し方はスマートですね。トラックバックでもできそう。
↓実行されてる方を見つけました。
F's Garage:MT TrackBackスパムを消す
DBからデータを削除したあとに、エントリを再構築することでblog上からも削除されます。参考SQL文
delete from `mt_tbping` WHERE tbping_blog_name like '%poker%' or tbping_blog_name like '%texas%' or tbping_source_url like '%poker%' or tbping_source_url like '%texas%' ;参考にしていただくのは構いませんが、WHERE以降をつけずに「delete from `mt_tbping`」だけで実行するのは絶対にやめてくださいね。トラックバックが全部消えてしまいますので。
鵺的:想空間: mt-spamstop-tb_20050202
別の対処方法として<A>タグを含むトラックバックをブロックするプラグインも公開されてます。
Ogawa::Memoranda: Quasi-Spam Filter Plugin
より高度な設定が可能なプラグインもあります。
Open Proxy からの Trackback Ping を拒否する MT プラグイン: blog.bulknews.net
http://tanaka.sakura.ad.jp/archives/000328.html
シンプルにトラックバック用のプログラムファイルをリネームして回避する方法。
追記
Trackback の脆弱性についての勧告: blog.bulknews.net
プロキシ経由ではなくて、こういうスパムの送り方もあるんですね。
今後は、日本語でのスパムも登場するでしょうし、抜本的な対策が必要かも。
うーん、頭痛くなってきた。
と思ってたら・・・
サーチエンジンの対処を変えて、スパムを投稿すること自体を無意味にしていこうという取組みのようです。素晴らしい。
MovableTypeで、この'nofollow'タグをサポートするには
Movable Type Publishing Platform: Movable Type 'nofollow' plugin
このプラグインでコメントもトラックバックもいけます。
多くのBlogで実装されれば、徐々に沈静化していきそうですね。
そこが知りたい!検索エンジンの裏側
今回のnofollowのサポートについては、ここの解説がわかりやすい。
Movable Typeモデルの終焉:風のまにまに号
スパムは抑止できたとしても、アタックに使われる可能性は残ってますね。
もうすでに対策が取られてるかもしれないですが、興味深い記事です。
Movable Type 日本語版サイト: 【重要】 Movable Typeの脆弱性と対策について
Movable Typeの脆弱性により、スパムメールの送信を幇助してしまう現象が発生することが分かりました。出荷済みのすべてのMovable Type日本語版に、この脆弱性があることが確認されました。
ということなので、即ダウンロード&対策。
巡回先のいくつかで既に取り上げられていました。
こういう情報はわりと速く伝わりそうですね。


