Posts tagged MovableType

新しくしてみた

MovableTypeのバージョンアップついでに3年ぶりくらいでデザインを一新してみました。

結構それなりにまとまった時間がないとこれってできないんですよね。

今回は全く新しくMT4.261をクリーンインストールして、古いブログから記事をエクスポート&インポートしてきて、きれいさっぱりの状態になりました(笑)。

前はといえば、結構負の遺産というか、不要なプラグインだらけだったり、いろいろ小細工のテンプレートやらCGIとかがあったりしたんだけど、これで再スタートとなったわけです。

MTは秋以降にバージョンが5になりそうで、そのときにはまた大幅に変わるという噂なので、移行の予行演習も兼ねて、みたいなところもあったけど、デザインが面白みがなさすぎたので、ちょっとかなり斬新に変えてみましたよ。(テンプレートはMTモンスターのを利用)

でも、全体の再構築で15分近くもかかるようになってしまったのでやっぱ普通の状態では無理があるのか・・・?

しばらく様子を見てみることにする。

MovableType3.34日本語版リリース!

15の週に出るよ、出るよ、とあちこちで囁かれていたMT3.34日本語版がひっそりと先ほどリリースされたようです。
今回の目玉はなんといってもFastCGIサポートの向上でしょうね。

やってみる価値ありそうです。

もちろんクロスサイトスクリプティング等、セキュリティの対策もされているので早めにアップグレードしたほうがいいと思います。

ひとまずざっと変更点を並べると、

●FastCGIサポートの向上
●スキーマバージョンの訂正
●不正なHTMLタグによるスクリプト実行の可能性
●MTCommentPreviewIsStaticテンプレートタグの機能を利用したスクリプト実行の可能性
●NoFollowプラグインの無効化またはアンインストールに伴うサニタイズ処理の不具合
●再構築オプションの表示
●プラグインのアップグレード機能の修正

ていうか、例によって403ThrottledエラーでSixApartにTB送れないんですけど( つД`)
いい加減気づいて対策を打って欲しいものだが。。(´ヘ`;) 

以下、MT3.34という意味ではまだ当分使える本です。

MOVABLETYPE PLUGINS DIRECTORY
MOVABLETYPE PLUGINS DIRECTORY
posted with amazlet on 07.01.23
関根 元和 藤本 壱 みらの
毎日コミュニケーションズ
売り上げランキング: 97266
おすすめ度の平均: 3.0

3 何かプラグインを探すなら
1 う〜ん。。。
5 公式タグリファレンスと共に持てば無敵の書

Movable Typeでつくる!最強のブログサイト プラグイン&カスタマイズ編
藤本 壱
ソーテック社
売り上げランキング: 7536
おすすめ度の平均: 5.0

5 Movable Typeの可能性が広がる本

MTスパム対策その後

コメントやトラックバックのスパム対策では主としてたねちゃんさんのアイデアを取り入れさせて頂いてます。

まだまだいろいろ実験段階ではあるんですが、
対策は段階としては以下のような感じです。

More >

make_bm_linkなどCMS.pmでの「Subroutine xxx redefined」エラー

なんかずっとApacheのエラーログに出続けていて、けど動作上問題ないので放置しておいた(!)エラーで次のものがありました。

例)

Subroutine make_bm_link redefined at lib/MT/App/CMS.pm line 1437.
Subroutine _bm_js redefined at lib/MT/App/CMS.pm line 1501.
Subroutine reg_file redefined at lib/MT/App/CMS.pm line 9157.

大体上記3行がワンセット。

自分がmt.cgiにアクセスしたときは必ず出ていて、他の知らない人がmt.cgiへアクセスしたときにも出てるっぽい。
それらエラーログは数週間で数万行にものぼり、つまり、それだけmt.cgiにも不正アクセスを繰り返している輩が多いということでしょうか。CGI負荷の観点から行くとmt.cgi自体もやはりリネームしておいたほうが無難か。。
最近Apacheのログ調査をしているので、mt.cgiへのアクセスは邪魔なのでログに乗らないようにしていたけど、ちょっとここらへんも戻してきちんと調査してみよう。

で、話は戻って上記のエラーは調べたところ、alogblogのQuickImagePostプラグインが原因だったみたい。

[root@linux alogblog]# grep make_bm_link QuickImagePost.pl
sub alogblog_make_bm_link {
*MT::App::CMS::make_bm_link = \&alogblog_make_bm_link;
[root@linux alogblog]# grep _bm_js QuickImagePost.pl
$param{bm_js} = $app->_bm_js($param{bm_show}, $height);
$app->uri( ‘mode’ => ‘reg_bm_js’,
sub alogblog_bm_js {
*MT::App::CMS::_bm_js = \&alogblog_bm_js;
[root@linux alogblog]# grep reg_file QuickImagePost.pl
sub alogblog_reg_file {
*MT::App::CMS::reg_file = \&alogblog_reg_file;

要は関数が再定義されてますが?っていうエラーなんでしょうか。

QuickImagePostプラグインは入れてちょっと使った後は全く使ってなかったので単純にプラグインを削除して解決しました。ググってもあまり出てこなかったけど、参考URLは
http://alogblog.com/movabletype/plugins/enjoy_your_posting/
です。

それにしてもApacheのログというのは見れば見るほど「こいつ何やってんの?」っていうものが多いですねぇ。。( つД`)

AddToHatenaBookmarkプラグインを入れてみた

ogawaさんの「AddToHatenaBookmark」プラグインを入れてみました。

概要としては引用すると、

このプラグインは、公開状態のエントリーを更新したり、新規に公開状態のエントリーを追加したときに、そのエントリーをはてなブックマークの自分のブックマークに追加するものです(参考: Update-n-Pingプラグイン)。

イマイチ用途が分かりにくいかもしれませんが、この作業をマニュアルでやっている人もいるようです。自分のブログをはてなブックマークで宣伝できるという一次的なメリットに加え、みんなでこれをやれば、はてなブックマークの検索機能をブログ検索機能として利用できるという二次的なメリットもありそうです (つーか、3ユーザがブックマークしないとダメか?)。

です。

自分の書いたエントリを自動的にブックマークに追加してくれるのでそれだけで1user追加されるのですぐ、というわけでなくても「いずれきっと」効果を発揮してくれると思います。

ここからAddToHatenaBookmark.zipをダウンロードしてプラグインのディレクトリに放り込むだけなんですが、ちょっと問題が出ました。

Can’t locate loadable object for module DateTime in @INC (@INC contains: ~

というようなエラーが発生して、プラグインの設定画面で正しく表示されない。
これは、DateTimeモジュールというPerlのモジュールが正しく組み込まれていない、というかMTのディレクトリにあるDateTimeモジュールを使おうとして(mt/extlibディレクトリにある)、エラーとなったというもの。
サーバで同モジュールを組み込むことで解決できました。
FedoraCore5+x86_64なのでMTの用意したモジュールではダメだったのかも。
手順としては、

extlib/DateTime/
extlib/DateTime.pm
extlib/DateTimePP.pm
extlib/DateTimePPExtra.pm

をどこかのディレクトリにmvで退避しておいて、

yum install perl-DateTime

とするだけでした。(ogawaさん、ありがとうございました)
今後同様なエラーで試せる手順だと思います。

さて、このプラグインを有効にして、プラグインの設定画面でユーザIDとパスワードを指定すれば、エントリを書いたり更新したりするだけで自動的にブックマークされます。
確認方法はMT管理画面の「ログ」を見れば出ています。

[AddToHatenaBookmark] updateEntry suceeded: http://b.hatena.ne.jp/atom/edit/3405559

また、既にはてなブックマークに登録されているエントリでも更新するとはてなへ「追加」に行きますが、既に登録済みであれば自動でスキップされます(重複登録されることはありません)。

[AddToHatenaBookmark] updateEntry skipped: http://b.hatena.ne.jp/atom/edit/3405989

実際にはてなの自分のブックマークを見ると下の赤い四角の枠内ように自動的に追加されてます。

bookmark.jpg

その際に、タグのところに表示される言葉は、エントリの「キーワード」に指定すると自動的にタグ付けされるのでこれも便利です。(但し、できれば日本語は避けたほうがいいみたい)

キーワード欄の解釈方法はTagwireプラグインと共通です。ブラケット[]、シングルクォート・ダブルクォートで囲まれた文字列は一個のタグとして認識します。また、「;,|」は区切り文字として機能します。キーワード欄に「;,|」が含まれない場合には空白文字が区切り文字として機能します。

下記の例はすべて「Movable Type」と「Plugin」という二個のタグとして認識する。

“Movable Type” Plugin
Movable Type, Plugin
Movable Type|Plugin|
[Movable Type][Plugin]

あとこのプラグインとは別の話として、自分としては、

user.jpg

のようにエントリの下に上図赤丸みたいに表示したいのですが、これはどうやったらできるんでしょう?

その他参考URL:たねちゃんズ12: 初期化ってレベルじゃねぇぞ!

403 Throttledエラーの原因

以前2ヶ月ほど前にSixApartへのトラックバックでしょっちゅう403 Throttledエラーが出て困っていたときに調べたときはほとんど情報がなかった記憶があるが(確か、よく調べたはずなんだけど)、まさか自分のサイトでも同じことが起こるとは・・・( ̄Д ̄;;
たねちゃんさんからのコメントでそういう事象が起きていることを知りました。

検索してみると、非常に分かりやすく解説して下さっているサイトを見つけました。
hxxk.jp - Movable Type の HTTP error: 403 Throttled に関するまとめ

Throttling 機能とは Movable Type 3.1 から実装された機能で、コメントやトラックバックなどが大量かつ連続して送られてきた場合に、システムが過負荷状態に陥らないようにコメントやトラックバックの受付を行わなくする機能です。
よって、 Throttled というのはコメントやトラックバックの受付制限を超えてしまい、受け付けられなかったということです。

関係するディレクティブは以下の3つ。
●ThrottleSeconds
  ・サイトの閲覧者がコメントを投稿した後に、再投稿できない時間を秒数で指定
  ・初期値:20
●OneHourMaxPings
  ・1時間に受け付けられる最大値
  ・初期値:10
●OneDayMaxPings
  ・1日に受け付けられる最大値を設定
  ・初期値:50

MT3.3では直接以下のようにmt-config.cgiに追記する。
(例)
ThrottleSeconds 30
OneHourMaxPings 10
OneDayMaxPings 120

全て自分のサイトに来るコメントやトラックバックの数に応じて決める必要あり。

ここでこれらはそもそも、コメントやトラックバックのCGIが処理を行う時に影響する数字です。
つまり、コメントCGIやトラックバックCGIのリネームによる対策
たねちゃんズ12: CGIリネーム完全熟成版、そして究極版へ
などをしていればその数は減らせるはずです。

もともとSixApart社もコメントスパムやトラックバックスパムがここまでひどくなるとは想定していなかったことによるデフォルト値であって、正当な来訪者でない人のためにこれら制限に引っかかって正当なコメントやトラックバック投稿者が403 Throttledになってしまうのは悲しい現実です。

やはり、コメントやトラックバックのCGIが動作する以前にスパムを受け付けないようにするのが最も効率的で理にかなっており、IPではじく手法と上記たねちゃんさんのCGIリネームなどが有用と思います。

是非お試しあれ。

BetterFileUploader2.0

MT3.2時代に大変お世話になっていたBetterFileUploaderですが、MT3.3になってからはBigPAPI依存だったこのプラグインが使えなくなっていました。

やはり画像などファイルをアップロードする際に、デフォルトの「ファイルのアップロード」では、いちいちパスを指定しないといけないし(※)、面倒なので最近はあまり画像をアップするのもやめてました。

※テンプレートを直接いじればアップロードパスは変更できますが、「現在の年月」をベースにした自動処理をするのは簡単ではないし、テンプレートをいじればアップグレードで元に戻ってしまうので効率的でない。

そして、ようやく新バージョンのBetterFileUploaderがリリースされました。
Eat Drink Sleep Movable Type

但し、残念ながらフリーではなくなったので、購入が必要です。($10くらい)

勢いで購入してしまいました(笑)

インストール自体はプラグインディレクトリに丸投げでOKです。

設定はシステム・メニューの「プラグイン」からできます。
「Click to override weblog-specific settings with system-wide settings」
のチェックをONにすると以下画面が出てきて、全て英語ですが特別難しく考えなくてもそのままでもOKです。
画像のサムネイルのサイズは縦・横の長いほうのピクセルを書いておけば自動的にその大きさにしてくれるので自分のブログのエントリの幅と相談しながら最大許容量を入れておけばいいと思います。

(早速BetterFileUploaderを使いながら画像アップ!)

More >

MT3.33のリリース

MTにクロスサイトスクリプティングによる膀弱性発覚!

ということで、新バージョンのMT3.33がリリースらしいです。
早めにバージョンアップしたほうが無難そうですね。

Movable Typeのプログラムにおいてクロスサイトスクリプティングによる脆弱性が確認されました。対策を施した新バージョンをリリースいたします。

これとは直接関係ないが、最近必ずSixApartへのトラックバックが失敗する。
なじぇ?

「http://www.sixapart.jp/cgi-bin/mt-tb.cgi/5249」へのトラックバックは失敗しました: HTTP error: 403 Throttled

謎のトラックバックスパム

なんか最近やけに変なトラックバックスパムが来るようになった。(ーー;)

どう変かというと、今うちのブログは毎日トラックバックURLやコメントのCGIが変化するようにしていて最近はスパムは皆無だったんだけど、突然何十件と来はじめた。
しかもトラックバックURLが変化した時間帯の前後も1分間隔で変わらず来ていた。
なんで~?

ひとまずログを見ると、「トラックバックの抜粋(概要)」はこんな感じ。

「たまに来ますのでよろしくお願いします。」 ←これが50件
「かねこさん2周半お疲れ様でした。」 ←これも40件以上

なんじゃこりゃ?
誰だよ、かねこさんって!

トラックバック元IPアドレス、トラックバック先のエントリもバラバラ。
dig -x xxx.xxx.xxx.xxxをやってもno server(当然偽装に決まってるけど)

トラックバックURLが変化しても追いつづけられるってことは??

まあ、眠いし、その後は来なくなったので当面放置!

DELL PowerEdge SC430 期待の新サーバが来た

買っちゃいました!新サーバ。
pedge_sc430_quarter_131x145.jpg

前のエントリ「新サーバ投入計画」で書いたけど、実家で動いているサーバはその後も夜中のフルバックアップ処理中にそのまま死んだり、そろそろ本当にやばい!

なんせノートPCですしねぇ。
ただLINUXを入れてWEBサーバにするだけならさほど負荷はないし、問題ないんだけど、MovableTypeもCGIだのデータベースだの使っててかなり実はそれなりのスペックのサーバじゃないとダメということも判明。メールサーバ、DNSサーバ、ブログサーバ、1台でよく頑張ってはいると思うけどね。

今の死にかけノートPCサーバのスペックはこんな感じ。

More >