2014年9月 9日

MT 6.0.4 リリース

[ReTweet This!] カテゴリ:Movable Type

 はい、MT 6.0.4がリリースされましたので、バージョンアップでございます。今回の変更点はこんな感じ

 なんか、最近はWordpressばっかいじっててMTの世界からどんどん遠ざかってる。MTはMTの良さがあるけど、気軽にサイトを構築するのはWordpressの方が適当なんだよねぇ、、、。とりあえず、自分のブログはMTのままで行きたいと思う。リリースされ続ける限り、使っていきたい。

 

投稿者 ymkx : 2014年9月 9日 11:09 |

2014年4月 9日

Movable Type 6.0.3

[ReTweet This!] カテゴリ:Movable Type

MT6.0.3がリリースされましたよっと。

[重要] 6.0.3、5.2.10、5.17 セキュリティアップデートの提供を開始

管理画面のXSSとコメント投稿時のXSSかな、と言うわけでアップデートしました。データベースには影響ないみたいね(アップデートしてみて)。リリースノートをチェックしたけど、XSS系の話し以外にデータベース・ドライバのバッファサイズを設定できるDBBlobMaxLenなんて値が加わったりしてます。

てか、なんか画像アップロードの時の処理がおかしいのって俺だけなのかなぁ? 編集画面で画像をアップしようとしたときの動作が変なんだよね、、、。

投稿者 ymkx : 2014年4月 9日 16:47 |

2014年1月17日

Movable Type 6.0.2

[ReTweet This!] カテゴリ:Movable Type

Movable Type 6.0.2がリリースされていたのでアップデート。リリースノートをチェックしてみると、

・Internet Explorer 11に対応
・Microsoft IIS サーバーの FastCGI に対応
・新しいモディファイアを追加
・Loupe Style Guide を公開
・新しい環境変数

だってさ、まー、あんまり影響は無いみたい。セキュリティ的なアップデートはありません。

え? Movable Type Advanced? なにそれ、速いの??

投稿者 ymkx : 2014年1月17日 12:14 |

2013年10月17日

祝MT6リリース!

[ReTweet This!] カテゴリ:Movable Type

 わーい、MT6がリリースされたよー、というわけで、俺のブログもバージョンアップしたよーーー。詳しくは公式サイトをチェックしよう!

Movable Type 6.0 の出荷を開始します

個人的にはData APIは助かります。より容易にMTのDBから動的に何かを生成とかできるしねー。今まで、テンプレートに頼っていたけど、これで楽にいじれるぜ。で、地味なんだけど重要なのが「非公開日指定機能」かな。企業Webサイトの場合、公開期限を決めている場合もあっていままで手動で非公開にしたりしてたしね。

 というわけで、MT6にバージョンアップはしたけどrc2を使っていたので操作感はもちろん変わらなーい。今は忙しくて余裕がないけど、年末年始にでもAPIを活用して色々作っちゃおうかなー。

投稿者 ymkx : 2013年10月17日 10:54 |

2013年9月26日

PHP Fatal error: Call to undefined function translate_phrase_param() in /xxx/php/lib/l10n_ja.php on line 135

[ReTweet This!] カテゴリ:Movable Type

 MT6のリリースが10月17日に決定、なんてメールを読んでたらMovable Type 6.0 RC2がリリースされたことを知り、勢いでバージョンアップしたら管理画面じゃなくて公開ページにアクセスするだけでこんなエラーが出て、なにも出力されないわけですよ。

PHP Fatal error: Call to undefined function translate_phrase_param() in /xxx/php/lib/l10n_ja.php on line 135

なんだこれ? と思って調べてみるんだけどちんぷんかんぷん。管理画面ならともかく、なんで静的HTMLのページにアクセスしてこんなエラーが出るんだ??

 全然心当たりがなかったんだけど、とりあえずブログにアクセスしてなんも出力されないのはヤバイと思って、一旦旧バージョンのMTのファイル群に戻してみたのね。そしたら、ちゃんとページが表示される、、、ということは新しいソースに何か問題があるのか? と思いましたが、エラーログをもうちょい見てみるとこんなエラーが出てることが判明。

PHP Fatal error: require_once() [function.require]: Failed opening required '/xxx/addons/DynamicMTML.pack/php/dynamicmtml.run.php' (include_path='.:/php/includes:/usr/share/pear') in /xxx/.mtview.php on line 31, referer: xxx

.mtview.php?? なにそれ怖い、と思ってググってみると、、、DynamicMTMLという懐かしいキーワードが、、、。ああ、昔、試しにと思ってダイナミックパブリッシングとかやってた残骸が悪さをしていたみたいです。いったいいつからこの状態になっていたのだろうか、、、。.htaccessを削除して一件落着でございますよ。

 というわけで、MT6 rc2にバージョンアップしました、、、おいおい、利用してるサービスでrc2にバージョンアップとかするなよなぁ(人柱)。

投稿者 ymkx : 2013年9月26日 14:06 |

2013年7月10日

MT6からはMTOSが無くなる

[ReTweet This!] カテゴリ:Movable Type

 先ほどMT6β1のインストールを終えたばかりですが、ある意味衝撃的なライセンスに関する発表がありました。


Movable Type 6 の新しいライセンスについて

これまでは、商用版、個人無償版のライセンスに加え、コア部分を Movable Type Open Source (MTOS) として GPL(*1) でも提供してきました。Movable Type 6 からは、商用版、個人無償版のライセンスは継続しますが、MTOS の提供は行いません。これまでに配布した MTOS については、そのライセンスは今後も有効でありつづけます。

MTOSの提供は行わない、、、これはMTにとってとても大きな変更になると思います。個人無償版ライセンス(私も利用しています)は生き残るとは言え、これで法人向けは完全に有償のみになると言うことですね。もしくはMT5のMTOSを使うかということですかね。

 ゆっくり考えてみないとこの決断に対する評価はできないのですが、上記のページにしっかりと今回の決定に至った経緯が書かれていますので、皆さんもぜひ目を通して下さい。

 さて、MTコミュニティの反応はどうなんだろうな、、、。

投稿者 ymkx : 2013年7月10日 11:42 |

MT6β1がリリース

[ReTweet This!] カテゴリ:Movable Type

 MT6β1がリリースされました。っていうか、いつの間に開発していたんだ、全然気がつかなかった。いろいろ変わっているみたいだけど、まずはインストールしてみたよっと。

MT6βテスト用ブログ
http://mt6.ymkx.net/mt6/

まー、この出力されたページを見ててもどうにもって感じだけど、標準テンプレートテーマのRainier 1.1がシンプルレスポンシブでなかなかイカします。

Rainier はレスポンシブ Web デザインを採用したブログテーマです。Media Query (CSS) を利用したマルチデバイス対応に加え、Movable Type の機能を使ってロゴやナビゲーションの内容を簡単にカスタマイズできます。

うひょー、かっちょえーー。もう、このブログもβにアップデートしちゃうか(無茶)。で、公式でのリリース情報はこんな感じ。

Movable Type 6.0 ベータ
Movable Type 6 は、新しいAPIの実装と各種機能の改善をおこない、従来以上に強力な「パブリッシングプラットフォーム」として進化を遂げました。

Movable Type 6 では、新しいAPIを通じて、さまざまな言語による機能実装やデータ操作が可能となります。APIを実際に利用したユーザーモードアプリ「Loupe」では、スマートフォンからMovable Typeの各種操作がスピーディに行えます。

また、ウェブサイトの機能を見なおし、ブログ用の記事を記述できるようになりました。Movable Type 5の特徴である「構造的なウェブサイト管理」はもちろん、シンプルなブログも最短ステップで作成可能となります。

テーマもそうなんだけど、ユーザーモードアプリ「Loupe」とか新しいタグのMTStatsSnippetが気になる。まー、いろいろ使って試したいと思いますです。

投稿者 ymkx : 2013年7月10日 11:25 |

2013年5月10日

MT 5.2.3

[ReTweet This!] カテゴリ:Movable Type

 いつの間にかMT 5.2.3がリリースされていたのでアップデートしましたよっと。ちなみに、今回の修正点は、

MySQL の max_user_connections が 20以下に設定されている場合に、新規インストール、アップグレードが出来ない問題を解消しました。すでに、Movable Type 5.2.2 にアップグレードされている場合や、MySQL以外のデータベースを利用している場合には、本バージョンへのアップグレードを行う必要はありません。

今回のリリースにはセキュリティに関する修正は含まれません。
5.2.3 リリースノート

え? それだけ?? って、アップグレードする必要、全くなかったなぁ、、、。

投稿者 ymkx : 2013年5月10日 16:46 |

2012年12月17日

MT5.2.2

[ReTweet This!] カテゴリ:Movable Type

 使用しているMTを5.14から5.2.2にバージョンアップしました。なんか、投稿画面からして若干違和感が、、、。

 変更点はこんな感じ。

5.2.2 リリースノート

っていうか、5.2系なのでこっちも参照だぜ、べいべー。

5.2 リリースノート

っていうか、nginx/PSGIを使ってみないとなぁーーー。

投稿者 ymkx : 2012年12月17日 17:43 |

2011年7月 5日

MT5.1にバージョンアップ

[ReTweet This!] カテゴリ:Movable Type

 長らくこのブログではMT4を使用していましたが、ついにMT5にバージョンアップしました。最新版なので、MT 5.12ですね。

 MT5自体は様々な案件で利用していたので違和感は無いのですが、個人ブログとしてはMT4に慣れきっていたので、様々な配置変更で戸惑ってみたり。まー、それも使い込んでいけば慣れてくるんだろうな。

 ちょっとイヤだったのが、なぜか再構築にMT4時代よりも時間がかかること。なんでだろなー、まー、MySQLのチューニングだとかちょこちょこいじっていければと思います。

投稿者 ymkx : 2011年7月 5日 15:20 |

2011年5月26日

MT5.1 リリース

[ReTweet This!] カテゴリ:Movable Type

 昨日、2011年5月25日にMT5.1がリリースされました。MT5のリリースは、2009年11月26日のことなので、約1年半ぶりのアップデートですね。枝番のバージョンアップなので、あまり機能に変化がなさそうに見えますが、利用者から多く要望が出ていた部分の機能追加がたくさんあり、痒いところに手の届くソフトウェアになったと思います。具体的な機能強化点は、

・カテゴリー、フォルダの並び替え
・投稿画面のユーザビリティ向上
・一覧画面のソートやAjaxによる速度向上
・一覧のフィルタ機能を大幅に強化
・MTテンプレートタグを使ったカスタマイズがより便利に

といった所です。詳細は、「Movable Type 5.1の新機能」ページで確認してください。これを期に、俺の個人ブログもMT5.1にバージョンアップしちゃおうかなぁ、、、。

 で、このリリースに合わせて、Movable Typeの最新バージョン5.1のリリースと解説書『Movable Type 5.1 プロの現場の仕事術』の発刊を記念して、6/25に『MTDDC Meetup Tokyo 2011』が開催されるとのことです。参加したいけど、俺、次の日にサーバ移転があるんだよなぁ、、、。

投稿者 ymkx : 2011年5月26日 17:05 |

2011年1月 6日

MTOS 4.35

[ReTweet This!] カテゴリ:Movable Type

 いつの間にかMTOS 4.35が出ていたので、このブログのMTもバージョンアップしましたよっと。日本語の情報が全然出てないでやんの。

Movable Type 5.04 and 4.35 Security Update [MOVABLETYPE.org]
Movable Type 5.04 and Movable Type 4.35 were released today. These are mandatory security updates for all users. These updates resolve multiple vulnerabilities discovered in Movable Type 5.x and Movable Type 4.x.

って、セキュリティアップデートじゃないか、、、。しかも、12月7日にリリースされてら。

投稿者 ymkx : 2011年1月 6日 18:09 |

2010年11月 2日

サーバ移転 その1

[ReTweet This!] カテゴリ:Movable Type/サーバ移転

 自分自身の備忘録的に、先週の土曜日にやったサーバ移転の話しを書いておこうじゃないか。

 某メディアサイトの移転で、F社のレンタルサーバを利用していたけどPerlModuleのインストールが出来ないだとか、アクセス集中でたまに繋がらなくなる事がある為、S社の専有サーバに移転するという案件。メディアサイトなので1日に何件か情報の更新があるのですが、CMSにはMT4を使用。ブログ的な使われ方のコンテンツもあるので、1日の更新件数は多いときは10件前後。総エントリー数は数千件と、まあまあのサイズ。アクセス数は日によってばらつきがある模様だけど、集中したときには本当に繋がらなくなっちゃうとか。画像が多いので、その辺も影響があるのかもしれないですな。ちなみに、全体の容量は2GB弱。

 で、MTの移転はここ数年で10数例やっており、MT2.6からMT4へのバージョンアップ&移転なんていう際物までやっているので、正直怖いものはない。ハズだったのですが、、、。

 まずは、現在運用中のサーバ関連情報収集から。F社のレンタルサーバの中では比較的上位のプランで、コストパフォーマンス的には悪くないんだけど、カスタマイズ性が本当に低い。ImageMagickがつかえなんて、ちょっとあり得ないよねぇ、、、。

 コントロールパネルが一通り揃っておりphpMyAdminが使えるので、MTで使用しているMySQLをdumpして新サーバでrestoreが最初に考えた移転方法。試しにphpMyAdminからdumpしてみるも、どうも文字コードの問題でうまくdump出来ない。文字コードを色々いじったりしてみたけど、どうにもすっきりと移行できず、色々文字変換をかけると移転後のチェックで膨大な時間が取られてしまうので、この移転方法は諦めました。

 次に考えたのは、MTのバックアップ機能を使う手法。最初は全てをバックアップしてみようと思い、[システムメニュー]→[ツール]→[バックアップ]からバックアップをしようとするが、Webサーバ側のタイムアウト制限でバックアップできず。それじゃー、一個一個のブログをバックアップしようというわけで、[各ブログ]→[ツール]→[バックアップ]からバックアップを試みる。一つ一つのブログのエントリーは少ないから何とかなるかと思ったけど、5千件を超えるエントリーを誇るブログがタイムアウト、、、。昼間のアクセスが多い時間にやっていたので、夜中に試すもタイムアウト。早朝に試すも、タイムアウト。いつ試してもタイムアウト、、、むっきーーー!!

 この時点で結構途方に暮れちゃったんですよね、暮れますよね? 最悪、今アップされているデータを解析して、MTのデータベースに直接書き込んでやるか、とか(無茶です)。

 原点に戻ろうということで、現在使用しているサーバを色々と調べていると、ホームディレクトリー直下にMySQLのデータディレクトリが存在していることが判明。もしかしたら、データベースファイルをそのまま新サーバに移動させたら、そのまま動いたりして? とか、思いついて実際にやってみると、ビンゴ! 動いたぜーーー、実際にMTで動作をチェックしたけど文字化けもなく、何事もなかったかのように動作してるし、、、。やー、PostgreSQLでは何度かやったことがあったんだけど、MySQLでもできてよかったーーー。細かいバージョンは違ったんだけど、同じMySQL5.0系だったのでそのまま動いちゃいました。
 それでもちょっと怖かったので、1度 DBをmysqldumpでdumpして、DBをDROPしてから、再度DBをrestoreしました。問題ないみたい。すげー、助かったぁ~。ちなみに、データベース名でディレクトリが出来ていたので、それを旧サーバから新サーバのMySQLデータベースディレクトリに放り込んだだけです。MyISAMだったのも助かった要因かもしれないね。

 というわけで、MT移行の方針も決定し実際の移転作業を行いました。


 サーバ移転作業をやる場合、目茶苦茶大きくてテストが出来ないような場合を除いては予行演習を何度か行います。今回も予行演習は何回かやっていて、流れ的には下記をイメージしていました。

1. 旧サーバメンテナンス表示開始
2. DNS Aレコード変更
3. 旧サーバ最新コンテンツ取得開始(3時間程度)
4. 旧サーバデータベースファイル取得
5. 新サーバデータベースファイル設置
6. 新サーバデータベース再構築作業(ファイル設置→dump→drop db→関連ファイル削除→restore)
7. 新サーバデータベース確認作業
8. 新サーバMT動作チェック作業
9. 新サーバコンテンツ確認(更新漏れチェック)
10. メンテナンス表示解除
11. 新サーバへのアクセス開始

で、1→7までは予定時間よりもかなり短く進められ(3の前に、事前にコンテンツは取得済みで、実際の移転の際には差分だけ手動でアップ)、予定の6時間が2時間程度で終わる予定でした。が、そこにはサーバ移転の常、罠がありました、、、。

 8の新サーバMTの動作チェックは問題なかったのですが、トップページの表示がなんか崩れる、、、なんか3件しか表示されないはずの場所で6件エントリタイトルが表示されてしまう現象が発生しました。その部分のMTタグを見てみるとmt:MultiBlogを使用して複数ブログから最新の3件を取り出す設定になっていました。

<mt:MultiBlog mode="context" include_blogs="1,2">
<mt:Entries lastn="3">
<li><a href="<$mt:EntryLink$>"><$mt:EntryTitle$gt;</a></li>
</mt:Entries>
</mt:MultiBlog>

mode="context"しているので、ちゃんと二つのブログから最新の3件を取り出してくれるはずなのですが、動作的にはそれぞれのブログから最新の3件を取り出しちゃっているようです、、、こまった。旧サーバでは問題なく動作していたのですが、なぜか新サーバでは異常な動作になってしまっている、、、。DBとかそういう問題とかじゃないのでかなり弱りましたが、色々調べるとmt:MultiBlogEntriesというタグでも同様の動作が可能だと判明、下記の様に書き直したところ無事動作を確認できました。

<mt:MultiBlogEntries mode="context" include_blogs="1,2" lastn="3">
<li><a href="<$mt:EntryLink$>"><$mt:EntryTitle$></a></li>
</mt:MultiBlogEntries>

 ちなみに、この動作不具合は後にMT3のMultiBlogのプラグインが残っていたのが原因だったとの連絡を頂きました。そっかー、MT3時代は標準プラグインじゃなかったもんね。

 というわけで、なんとか予定移転作業時間を1時間残して移転完了となりました。よかったよかったー。

投稿者 ymkx : 2010年11月 2日 12:07 |

2010年10月18日

MTのリンクを便利にしてくれる、InsertLink

[ReTweet This!] カテゴリ:Movable Type

 MTをもう7年近く使っていると思いますが、使い続けながらずーっとエントリー内でのリンクについて手動でtarget指定をし続けていました。あれ? 昔のバージョンって、指定できたんだっけ? もう忘れちゃった。

 で、やっぱ手動でターゲット指定書くのは不便だなぁ、ということでプラグインを探してみたらあっさりと見つかっちゃいました。

InsertLink [Movable Type プラグインディレクトリ]
エントリー編集画面のリンク挿入機能を強化し、以下の2つのことができるようになります。
・リンクの表示先のウィンドウ(target)を指定することができます。
・過去のエントリーからリンク先を選ぶことができます。
制作者: 藤本 壱 / フリー

おー、藤本さんが作ったプラグインなんだねー。なんか、過去のエントリーからリンク先を選ぶ機能なんかも着いてて便利便利。ちなみに、自分が使っているMTは4.34-jaですが、藤本さんのサイトにちゃんと対応プラグインが掲載されていましたよー。

 インストールは超簡単です、ダウンロードファイルを展開してmt-staticディレクトリとpluginsディレクトリにそれぞれファイルを設置して完了、設定は不要です。

 で、使ってみて分かったんだけど、このプラグインはユーザーのことをちゃんと意識してるというか、MTを使ってる人が作ったプラグインなんだなぁと実感しました。や、便利ですよ便利ー。なんで今まで使ってこなかったんだろ。過去のエントリーへのリンクはちょっと使い道があるか分からないけど、使ってみたいな。ブログ内で過去の記事に言及していることも多いしなー。

投稿者 ymkx : 2010年10月18日 11:25 |

2010年10月17日

MailPackが突然動作しなくなった

[ReTweet This!] カテゴリ:Movable Type

 ウチが構築したMovable Typeのサイトで、MailPackを使ってメール経由でブログへの投稿をしているサイトがあるんですわ。で、納品してしばらくはちゃんと動いていたのですが、突然メール投稿だけ出来なくなってしまいました。管理画面からの投稿はフツーに出来るんですけどね。

 で、MT管理画面のログに表示されているエラーはこんな感じのエラーです。

[MailPack] listner.pm Can't locate object method "new" via package "IO::Socket::SSL" at /usr/lib/perl5/site_perl/5.8.8/Mail/POP3Client.pm line 376.

やはりMailPack絡みのトラブルっぽいですね。ちなみにIO::Socket::SSLはもちろんインストール済み、、、。原因を色々考えたのですが、よくよく考えると動作しなくなったタイミングと、yum updateでperlが自動的にバージョンアップしたタイミングが符合します。このサーバーは一日1度yum updateを行っており、28-Sep-2010 15:06にperl-5.8.8-32.el5_5.2.x86_64.rpmがリリースされており、動作不具合が発生し始めたのが30日頃。そういうことを考えると、このperlのバージョンアップが原因の可能性があります。

 と、perlのバージョンダウンは容易ではありません。yumベースで行う場合は、まず本体のバージョンダウンを行いますが、その時に大量の依存プログラムもアンインストールされてしまいます。本体をアンインストールして、バージョンダウンしたものを新たにインストール。その後関連プログラムをインストールしますが、バージョン関連でのトラブルも予想され大手術になってしまうことが予想されます。

 色々とネットで情報を探していると、yumなどでperlをバージョンアップすると、CPAN経由でインストールしたperlモジュールがバージョンダウンしてしまうという情報を見つけました。正確なところは分からないのですが、インストールされた初期の状態に戻ってしまうのかもしれません。ということは、再度CPANでモジュールをインストールというかバージョンアップすればよいだろうと考えました。

 早速、CPANシェルを走らせてみます。

cpan> install IO::Socket::SSL
IO::Socket::SSL is up to date.

うーーーん、だめか。で、ネットで調べるとforce installせよとのことだったので、

cpan> force install IO::Socket::SSL
Running install for module IO::Socket::SSL
Running make for S/SU/SULLR/IO-Socket-SSL-1.33.tar.gz
CPAN: Digest::MD5 loaded ok
Checksum for /root/.cpan/sources/authors/id/S/SU/SULLR/IO-Socket-SSL-1.33.tar.gz ok
Scanning cache /root/.cpan/build for sizes
IO-Socket-SSL-1.33/
IO-Socket-SSL-1.33/util/
IO-Socket-SSL-1.33/util/export_certs.pl
IO-Socket-SSL-1.33/BUGS
IO-Socket-SSL-1.33/certs/
IO-Socket-SSL-1.33/certs/test-ca.pem
IO-Socket-SSL-1.33/certs/client-key.pem
IO-Socket-SSL-1.33/certs/server-key.pem
IO-Socket-SSL-1.33/certs/client-key.enc
IO-Socket-SSL-1.33/certs/server-rsa384-dh.pem
IO-Socket-SSL-1.33/certs/server-key.enc
IO-Socket-SSL-1.33/certs/server-cert.pem
IO-Socket-SSL-1.33/certs/my-ca.pem
IO-Socket-SSL-1.33/certs/client-cert.pem
IO-Socket-SSL-1.33/certs/server-wildcard.pem
IO-Socket-SSL-1.33/example/
IO-Socket-SSL-1.33/example/lwp-with-verifycn.pl
IO-Socket-SSL-1.33/example/ssl_client.pl
IO-Socket-SSL-1.33/example/ssl_server.pl
IO-Socket-SSL-1.33/example/async_https_server.pl
IO-Socket-SSL-1.33/META.yml
IO-Socket-SSL-1.33/MANIFEST
IO-Socket-SSL-1.33/t/
IO-Socket-SSL-1.33/t/02settings.t
IO-Socket-SSL-1.33/t/acceptSSL-timeout.t
IO-Socket-SSL-1.33/t/core.t
IO-Socket-SSL-1.33/t/readline.t
IO-Socket-SSL-1.33/t/nonblock.t
IO-Socket-SSL-1.33/t/sessions.t
IO-Socket-SSL-1.33/t/ssl_settings.req
IO-Socket-SSL-1.33/t/inet6.t
IO-Socket-SSL-1.33/t/01loadmodule.t
IO-Socket-SSL-1.33/t/cert_no_file.t
IO-Socket-SSL-1.33/t/compatibility.t
IO-Socket-SSL-1.33/t/dhe.t
IO-Socket-SSL-1.33/t/verify_hostname.t
IO-Socket-SSL-1.33/t/start-stopssl.t
IO-Socket-SSL-1.33/t/connectSSL-timeout.t
IO-Socket-SSL-1.33/t/startssl.t
IO-Socket-SSL-1.33/t/auto_verify_hostname.t
IO-Socket-SSL-1.33/t/testlib.pl
IO-Socket-SSL-1.33/t/sysread_write.t
IO-Socket-SSL-1.33/t/memleak_bad_handshake.t
IO-Socket-SSL-1.33/docs/
IO-Socket-SSL-1.33/docs/debugging.txt
IO-Socket-SSL-1.33/README
IO-Socket-SSL-1.33/SSL.pm
IO-Socket-SSL-1.33/README.Win32
IO-Socket-SSL-1.33/Makefile.PL
IO-Socket-SSL-1.33/Changes
IO-Socket-SSL-1.33/patches/
IO-Socket-SSL-1.33/patches/Net_SSLeay.patch

おお、進んでる進んでる、と思ったのもつかの間

CPAN.pm: Going to build S/SU/SULLR/IO-Socket-SSL-1.33.tar.gz

You need the XS Version of Scalar::Util for dualvar() support at Makefile.PL line 56.
Running make test
Make had some problems, maybe interrupted? Won't test
Running make install
Make had some problems, maybe interrupted? Won't install

ん? インストールできなかったなぁ。Scalar::Utilで何か問題が起きているみたいです。もしかしたら、こいつもバージョンがおかしいのかなと思い、

cpan> force install Scalar::Util
Running install for module Scalar::Util
Running make for G/GB/GBARR/Scalar-List-Utils-1.23.tar.gz
Checksum for /root/.cpan/sources/authors/id/G/GB/GBARR/Scalar-List-Utils-1.23.tar.gz ok
Scalar-List-Utils-1.23/
Scalar-List-Utils-1.23/Changes
Scalar-List-Utils-1.23/lib/

[中略]

/usr/bin/make test -- OK
Running make install
Files found in blib/arch: installing files in blib/lib into architecture dependent library tree
Installing /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/auto/List/Util/Util.so
Appending installation info to /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/perllocal.pod
/usr/bin/make install -- OK

おお、インストールできた。それでは、IO::Socket::SSLをバージョンアップしようと思ったのですが、実はここで問題は解決したような気がします。もしかしたら、IO::Socket::SSLもバージョンアップインストールしたかもしれませんが(肝心なところがうろ覚え)。

 というわけで、結果的にCentOSのyum updateでperl本体がバージョンアップされて、その結果Scalar::Utilのバージョンがおかしくなった(もしくは、アンインストールされてしまった)ことが、MailPackが動作しなくなった原因のようです。やれやれ。

 どうでもいいんだけど、MailPackを出してるスカイアークシステムのサポートはダメダメだったなぁ。問い合わせしたんだけど、まともに検証したとは思えない返事が返ってきた、、、。有料アプリだったら、このくらい自社で検証して調べてみてもいいのに、、、。CentOSで発生したと言うことは、RHELでも発生してるかもしれないね、使ってないから知らないけどぉ。

投稿者 ymkx : 2010年10月17日 09:02 |

2010年10月 1日

PostTwiOauth:Failed to post to twitter.501

[ReTweet This!] カテゴリ:Movable Type/Twitter

 MTでエントリーを書くと自動でツイッターにエントリーへのリンクをポストしてくれているPostTwiOauthと言う奴を利用しているのですが、今日になってツイート替え来ていないことに気付きました。

 で、ログをチェックしてみると、こんなエラーが記録されていました。

PostTwiOauth:Failed to post to twitter.501 (Not Implemented) Protocol scheme 'https' is not supported Client-Date: Thu, 30 Sep 2010 17:29:48 GMT

うーん、読んだそのままだよねぇSSL経由でポスト出来ないって事かな、、、。って、よく考えたら昨日ブログを移転してて、そこになんかモジュールが入ってないとか? 作者のページを確認してみると、

動作環境:
Movable Type 5.0以上推奨。(5.0.2で動作確認済み)
Movable Type 4.26以上(4.2以上で動作すると思われるが4.26未満未確認)
必須モジュール:Digest::SHA1(システムメニューにて確認要)

これか、ということで

yum install perl-Digest-SHA1

これで解決ーー、と思いきややっぱり同じエラーが表示されてポスト出来ません、、、。んーー、なんでやろか? たぶん、何かが足らないんだろうけどなぁ。と、なんか引っかかったので「Protocol scheme 'https' is not supported」でググってみたら、こんなページを発見。

Net::SSLeayではなく、Crypt::SSLeayを導入すれば実行できました。

関係あるかどうか分からないけど、インストールしちゃえ。

yum install perl-Crypt-SSLeay

おー、実行できるようになったよーー。というわけで、これは依存関係とかがあったのかなぁ。さくらのVPSでは入っていないperlモジュールだったので、同様の環境の方はご注意あれー。

投稿者 ymkx : 2010年10月 1日 02:30 |

2010年9月29日

mt4iの移設でエラー

[ReTweet This!] カテゴリ:Movable Type

 先ほどのエントリでも触れましたが、当ブログのサーバー移転を行った際にmt4iでエラーが出ました。ちょっと、エラーメッセージが途中までですが、こんな感じのエラーメッセージですね。

Loading template '/xxx/xxx/cgi-bin/mt4i/tmpl/mt4i/index.tmpl' failed: HTML::Template::new() - Problem reading cache file /xxx/xxx/cgi-bin/mt/mt4i/cache/tmpl/31/662338542ad0549fbcc13801d42bc7 (file_cache => 1) : Byte order is not compatible at ../../lib/Storable.pm (autosplit into ../../lib/auto/Storable/_retrieve.al) line 331, at /usr/lib/perl5/site_perl/5.8.8/HTML/Template.pm line 1384 at mt4i.cgi line 4131

と表示されました。

 で、色々と理由を探っていったのですが、mt4iのcacheが設定されていてmtをインストールしたディレクトリの下の /mt4i/cache/ 辺りにキャッシュファイルを貯めてるみたいなんです。で、どうしたもんかなぁと思っていたのですが、キャッシュファイルだったら消しちゃえばいいじゃんというわけで、キャッシュのファイルを全削除して再度アクセスしたら、ちゃんと表示されました。よかったよかった。

 

投稿者 ymkx : 2010年9月29日 17:37 |

当ブログを、さくらのVPSに移転しました

[ReTweet This!] カテゴリ:Movable Type/お知らせ/さくらのVPS

 別に何か理由があった訳じゃないのですが、さくらのVPSを借りていて折角なので実践的なものを移転しようということになり、自分のブログを移転しました。自分のブログっていうか、このブログ(MT 4.34-ja)ですね。

 で、既に移転は完了してさくらのVPS上でエントリを書いてます。まー、ちょっと問題はあったけど、概ね快調に動いてるね。比較が難しいんだけど、今まで動かしていたサーバーよりも再構築に掛かる時間が2/3になりました。
 移転作業は同じCentOS5同士だったので、ファイルをrsyncしてMySQLのdumpデータをレストアして完了。ちょっと問題があったというのは、mt4iのキャッシュデータが旧サーバのままでは使えなかったので、キャッシュファイルを全削除して解決でした。

 ちなみに旧サーバのスペックはPentiumD3.0GHz,RAM 4GB,って感じのマシンで、ツイッターからストリーミングAPIを繋いでいるのでロードアベレージが常に1.0くらいある状態で30分くらいかかっていたのね、再構築。それが、さくらのVPSに移行して再構築したら19分ちょっと。月に1000円のサーバーでココまでのパフォーマンスはありがたいな。旧サーバーは回線はフレッツ光ネクストのファミリータイプにインターリンクの回線なので、電気代を入れてランニングコストは4000円くらいかな。この比較はちょっと簡単じゃないんだけど、自分の感覚でそのくらい。もし、サーバーの性能が1.5倍だったら5倍くらいのコストパフォーマンスの良さかな、や、あくまで私の感覚ですよ。

 というわけで、移転しちゃったのであとは使い込むべし。もしかしたら、ウチのサービスを全部さくらのVPSで構築しちゃうのもいいかも。今インフラ代で10万円近くかかってるから、100台借りられるなぁ(迷惑)。

[追記]
なんかよく分からないけど、エントリーの保存が目茶苦茶速くなった。MySQLの性能の話しもあるけど、なんか全然違うレベルで速いな。というより、今まで使ってたサーバーのIOが遅すぎただけかも。

投稿者 ymkx : 2010年9月29日 16:40 |

2010年9月24日

ん、シックス・アパートがビデオ・エッグと合併?

[ReTweet This!] カテゴリ:Movable Type/zenback

 Movable Typeなどを出しているシックス・アパート社について、ちょっと気になるリリースが出ていました。

米ビデオエッグ社が米シックス・アパート社と合併し、米SAYメディア社を設立へ [six apart]
ブランド・エンゲージメントのパイオニアである米ビデオエッグ社は、本日、米シックス・アパート社の買収に合意し、現代的なメディア企業『SAYメディア社』を設立すると発表しました。 SAYメディア社は影響力のあるユーザーの発言やそのコミュニティを通じて、広告主に対して世界で3億4,500万人のユーザーにリーチすることを可能にします。

 これ、日本のシックス・アパートじゃなくてアメリカのシックス・アパート社と米ビデオエッグ社ががっぺーして「SAYメディア」という会社になるみたいなんだけど、ビデオエッグ社ってなんなのさ? 広告系の会社みたいなんだけど下記の記事を見る限りアドネットワークなのかな?

米広告会社VideoEgg、Six Apartを買収・新会社SAY Mediaを設立・日本法人は開発ラインも含め現状維持 [Searchina]
広告ネットワークのVideoEggがSix Apartを買収―新会社SAY Media、明日立ち上げへ [TechCrunch]
広告配信のVideoEgg、Six Apartを買収--日本法人は存続 [cnet Japan]

 で、気になる日本での動きなんだけど、こんなリリースが出ています。

シックス・アパート日本法人は既存事業を継続、社名もそのままに [six apart]
 米シックス・アパート社は、年内をメドに米ビデオエッグ社と合併し、新会社SAYメディア社として新しいスタートを切ります。合併後は、シックス・アパート日本法人はSAYメディア社の100%子会社になりますが、社名は「シックス・アパート株式会社」のまま継続し、当面の間、社名変更の予定はありません。
 シックス・アパート日本法人が提供中の、「Movable Type」「TypePad」「zenback」「sazanami」などの製品・サービスの開発、販売、サポートは、これまで通り継続して実施します。販売パートナー制度「ProNet」についても、今までと変わりなく提供します。

とりあえず、すぐに日本のシックス・アパートが変わるって訳では無さそうですね。そして、これまでの製品やサービスなども変わりなく提供とのことで、とりあえず一安心です。


 で、ビデオ・エッグという会社がどうにも気になるので、Webサイトを見てみたよ。

videoegg_shot2.jpg We are a new kind of media network that is reinventing the online advertising experience for brands. Driven by technology and entirely focused on delivering quantifiable attention, we offer the creation, delivery, optimization and measurement of brand advertising experiences. The result is unprecedented scale and ROI for advertisers.

だそうだ。よくわかんないんだけど、まー、いろんなメディアネットワークを使いますよって事でいいのかな、いいんだよ、うんうん。まー、ある意味、今増えている業態でもあるか。アメリカのシックス・アパートの主要事業がMovable Typeだったかどうかもよく分からないんだけど、なんだろなー広告側にシフトしちゃうのかな。

 というわけで新会社のSAYメディアのサイトも見てみた。

say_shot.jpg

んーと、ひとつ言えることはMovable TypeのMの字も無いぜ、ベイベー!! 薄々感づいてはいたんだけど、開発も利用も日本に集中してるのかなMovable Typeって。これ、下手すると、Movable Typeのシックスアパートは分離しちゃったりするのかもしれませんね。

 ちなみに、zenbackは日本法人が独自に提供しているとのこと。これ、ブロガーにとってはキラーツールになりそうな気配なので、なんとしても続けてもらいたいです。って、これも、ブロガーのネットワークツールじゃんね、サービス提供する側からしてみたら、、、。

投稿者 ymkx : 2010年9月24日 10:38 |

2010年9月17日

MTでDBD::Pgが動作しない

[ReTweet This!] カテゴリ:Movable Type/PostgreSQL

 とあるサイトで久々にMTの管理画面にアクセスしたら、なにやら管理画面にログインできない。ログインできないというか、DBD::Pgがロードできないというエラーが表示されてログイン画面にまで進まないのですね。mt-check.cgiにアクセスしてみると、やはりDBD::Pgが使えない状況になっているみたい、、、。こんな表示が出るわけです。

Undefined subroutine &DBD::Pg::db::_login called

 で、元々動作していたMTなのに何が起きちゃったんだろ? と、考えこんでいたのですが、よくよく考えてみたら元々CentOSのパッケージ版のPostgreSQLを使用していたのですが、途中でPostgreSQLのカスタマイズが必要になってソースから最新版をコンパイルしてインストールしていたのを思い出しました。その流れでパッケージ版PostgreSQLをアンインストールしていたので、DBD::Pg(perl-DBD-Pg)もアンインストールされていたのです。

 なら話は簡単yum install perl-DBD-Pgすりゃいいのか? とか思ったら、結局ソースからインストールされたPostgreSQLがインストールされちゃうというなんだかイヤな展開、、、もちろんmt-check.cgiで確認してもDBD::Pgは使えません、、、。
 それならCPANシェルからインストール、、、うまくいきません。じゃー、DBD::Pgのソースからインストール、、、うまくいきません。rpmでperl-DBD-Pg自体をインストール、、、うまくいきません。完全に泥沼です。

 で、モジュールの導入状況を確認すべく

# perl -e "use DBD::Pg"

としたら、こんなエラーが表示されるじゃないですか。

Can't load '/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/auto/DBD/Pg/Pg.so' for module DBD::Pg: libpq.so.5: cannot open shared object file: No such file or directory at /usr/lib/perl5/5.8.8/i386-linux-thread-multi/DynaLoader.pm line 230.

なんか、まともにライブラリが見えない状況みたいですよね。でも、よくよく考えたら元々入っていたPostgreSQLをアンインストールした後にソース版をコンパイルしてインストールした後に、ソース版から入れた場合にはやらなきゃいけないことを完全に忘れていましたよ、、、。

PostgreSQL 8.4.4文書
第 15章ソースコードからインストール
15.6. インストール後の設定作業

ああ、これだわ。しばらく、元々CentOSに入っているPostgreSQLしか使っていなかったから完全に忘れてた。 /etc/ld.so.conf に /usr/local/pgsql/lib を加えて、、、あれ? /etc/ld.so.conf を見てみると、

include ld.so.conf.d/*.conf

だとか。いつの間にそんな構造に変わったんだろ。というわけで、 /etc/ld.so.conf.d/postgresql.conf とかを作って、

/usr/local/pgsql/lib

とだけ書き込みます。でもって、

# /sbin/ldconfig

を実行。mt-check.cgiを見るとちゃんとDBD::Pgをロードしてる、管理画面にアクセスしたら何事もなかったように管理メニューが表示されましたよっと。

 んー、久々にはまりましたねー、終電逃しましたねーー。でも、なんとか解決できてよかった。実は、この件、自分のブログでも発生していてその時は解決するのを諦めて、他サーバにソースとDBを一度持っていってexportでデータをexport。元のサーバをMySQLで再セットアップして、先ほどexportしたデータをimport。こちらも問題なく動作するんですけど、やっぱ直した方がすっきりしますよね。あの時にちゃんと直しておけば、問題なかったのにぃー。ちなみに、その時には自分のブログしかインストールされていないと思い込んでた、、、。

投稿者 ymkx : 2010年9月17日 07:06 |

2010年9月10日

MT BanASCII

[ReTweet This!] カテゴリ:Movable Type/spam

 今更なんだけど、MT BanASCIIを導入しました。昔、MT3系で運営していたときは導入してたんだけど、バージョンアップを繰り返している間に抜けちゃったんだよね。

 で、びっくりしたんだけど、このプラグイン2005年にMT3.2向けにバージョンアップされた0.92が、私が使ってるMT4.34でも問題なく動くってこと、これはすごいよな。ちなみに、開発者はSixApartの宮川さんです

MT BanASCII 3.2 対応 [blog.bulknews.net]
英数字または latin-1 だけで構成されたコメントをはじく MT BanASCII プラグインですが、MT 3.2 日本語版リリースにあわせて 3.2 Junk Filter API で書き直してみました。ダウンロードは mt-ban-ascii.pl から。ファイルを plugins ディレクトリにおくだけで OK です。

 元々、ブログの更新頻度が少なかったときは、あまりコメントspamも来なかったんだけど、先月から更新頻度を上げたら一日に100件弱来るようになっちゃったんだよね、、、もー、本当にウザイ。ほとんどが海外のspamなので、このプラグインを入れたらあっさり無くなった、正直ちょっと寂しいくらいに(笑。

 このプラグインがMT5でも使えるかは試してないけど、Junk Filter APIとかが変わらなければずーっと使い続けられるのかもしれない。すごいことだよな。

投稿者 ymkx : 2010年9月10日 10:55 |

2010年8月 3日

PostTwiOAuth 0.41

[ReTweet This!] カテゴリ:Movable Type/Twitter

 ブログをちゃんと書いていこう、ということでブログを書いたら自動でツイッターに登録できるプラグインPostTwiOAuth 0.41をインストールしてみた。

 これ、フツーの人にとっては結構インストールの壁が高いかも、、、。というのも、pluginsディレクトリにファイルを展開してからの設定で、ツイートの為にTwitter側にアプリケーション登録を行うんですよね。まー、サービスとして展開してるんだったらこんなこと必要ないんだけど、独立アプリだったらそこまで面倒見れないもんね。なんか、複雑なんだけど、書かれているとおりにインストールすればすんなり動きます。なんか、ちょっとアプリ開発者の気分が味わえるかも。

 で、一個だけよくわかんなかったんだけど、Callback URLってのはプラグインの設定画面に表示されているex:に続くURLでいいんだよね? OAuthからの戻りURLのことだと思うけど、最初のOAuth認証でしか使わないと思うから、この辺りはインストール時に自動で流れ作業的に出来るといいんだけどね。

 あと、bit.lyの登録もしておかないとねー。bit.lyはアカウントを取得しておくと様々な解析が行えるので、実はURLを短縮する以上に便利だったりします。

 っと、エントリーをポストしてツイートされれば成功なんだけどどうかな?

投稿者 ymkx : 2010年8月 3日 11:52 |

2010年6月 8日

DBD::Pgがおかしくて、ブログ更新ができなかった

[ReTweet This!] カテゴリ:Movable Type/PostgreSQL

 なんか、5月に入ってブログをちゃんと書こうとか思っていたんですが、ブログがぶっ壊れてて更新できませんでした。うーん、「ブログがぶっ壊れてて」とか、とってもだめな表現でいい感じじゃん?

 実態は、MTで使っているDBであるPostgreSQLにアクセスするためのPerl Module「DBD::Pg」がなんだかおかしなことになってしまったことが原因。サーバにパッケージ版じゃないPostgreSQLをインストールした際に、PostgreSQLのパッケージをリムーブしたんだけど、そのときにCentOSのパッケージperl-DBD-Pgもリムーブされたんだよね。で、それに気づいてDBD::PgをCPANシェルでインストールしたり、コンパイルインストールしたりいろいろしたんだけどなんか動かない、、、。かなり長い期間かかって、試行錯誤したんだけど更新できないままほっておけないなぁと思って、この際だしPostgreSQLからMySQLに乗り換えちゃいました。

 Movable Type 5はPostgreSQLが公式サポートからははずれてしまっており、PostgreSQLからMySQLに乗り換える方法がマニュアルに掲載されていたはず、と思いチェックしてみた。

SQLite / PostgreSQL から MySQL への移行

、、、なんだよ、コンバートコマンドがあるのかと思ったら管理画面から「バックアップ」「復元」をやるのか、、、って、管理画面にアクセスできないんすけど、、、。

 しょうがないので、昔使っていたサーバのMovable Typeのバージョンを合わせて(バージョンアップ)、データベースを現サーバからdumpして昔使ってたサーバでrestore。おお、フツーに管理画面にアクセスできるぜ! というわけで、管理画面から「バックアップ」を実行。最初、システムからじゃなくてブログのところからバックアップしちゃって、そのブログしかバックアップできなくて時間を無駄に消費、、、。で、新サーバで復元を試みるも、管理画面からのファイルアップロードではサイズが大きすぎて更新できないので、importディレクトリにファイルをアップロードして(tar.gz形式は展開しないとダメ)準備完了!

 で、「復元」ボタンをポチッと押すわけですが、、、全然おわらねー。バックアップは5分くらいで終わったんだけど、復元は数十分かかりました。そりゃ、読み出しより書き込みの方が時間が掛かるよなーー、当然だわ。

 結局、画面が途中で止まってしまってすっきり終わらなかったけど、管理画面でチェックしたら、ちゃんと移行できてる感じ。ファイルの展開で恐ろしくエラーが起きていたけど、元々使っていたサーバの全く同じパスにアップしてるので、気にしない気にしない。なんか、ちゃんと動いてるみたいだよ、うんうん。

 というわけで、ちゃんとブログも更新します、へい。

投稿者 ymkx : 2010年6月 8日 15:57 |

2010年3月30日

~MTの再構築を改善!~パフォーマンスチューニングとシステム構成の集中講座 【2】

[ReTweet This!] カテゴリ:Movable Type

~MTの再構築を改善!~パフォーマンスチューニングとシステム構成の集中講座 【1】の続きです

 次いで3点目の『サーバスペック』。
 まずハード的な観点。MTについてはメモリよりもCPUパワーが重要、メモリは4GB程度で十分とのことです。まあ、これは専用サーバを用意するようなサイトの話しですけどね。そして、DB関係についてはDiskのI/Oがボトルネックになるので、RAID構成やSSDを使用することでパフォーマンス向上も望めるとのこと。SSDについては3倍ほどパフォーマンスが向上することもあるとか。
 で、ソフト的な観点についてはMySQLの話しが中心。MT5からMySQLを強く推奨しているのですが、その理由はMySQLの技術情報の多さだそうです。PostgreSQLユーザー会協賛会員の立場としては、ちょっと受け入れがたかったりしますが、確かに大規模ハイパフォーマンスの構築事例はMySQLが多く、それらのフィードバック情報も豊富ですよね、、、。MySQLのストレージエンジンはInnoDB(標準はMyISAM)を使用する方がよいそうです。そして、my.cnfでパラメーターのチューニングをすることで、某有名ブログサイトで9時間かかっていた再構築が1時間まで短縮されたそうです。それは、すごい。
 実は私が関わってるMovable Typeは全てPostgreSQLで構築しているのですが、パラメータチューニングが難しいのは事実ですね。というか、PostgreSQLを運用する上でのチューニング以上のことが難しいです。もうちょっと、PostgreSQLの構造的な部分を考えてチューニングをすべきなのですが、如何せん情報が少なくて苦労しています。うーん、ハイパフォーマンスサイトを構築する場合は、MySQLの選択も考えないといけないですね。っていうか、MT5はMySQL使うべきですね、現時点では。
 と話しがそれましたが、ソフト的な話しでは当然だったりしますがmemcachedの利用でのパフォーマンス向上も考えられるそうです。まー、HDDにアクセスしなくなれば当然パフォーマンスは向上しますよね。

 そして、最後の『システム構成(サーバ分散)』について。
 MTの構成を考えるとWeb/App/DBの3層モデルになっているので、それらを分散させることは容易。そして、分散させることでパフォーマンス向上が望めます。サーバスペックをあげていくスケールアップよりも、スケールアウトでサーバ台数を増やす方がパフォーマンス向上が容易な場合も多いとのこと。
 具体的な例として、mt.cgiを別サーバで動かすだけでも効果があるそうです。サーバ分散の例は、「[Web/App/DB] → [Web | App/DB] → [Web | App | DB]」の順番で分割しましょうとのことです。ちなみに、MTのライセンスはmt.cgiが動いているかどうかなので、上記の範囲で分散する限りライセンスは1つで問題ないようです。
 MT4からターゲットを法人に移したので、大規模なサーバ構成のものの相談が増えてきているみたいですね。そのあたりでも、SixApartさんに相談するのもありですね。ちなみに、某社のシステム構築例を見せてもらいましたが、もはやMT云々じゃなくてサイト全体のシステム構築の話しですよね。このあたりに来ると、かなりの大規模サイトでコンテンツなんかも大量なサイトの話しですが、いざという時のために知っておくべきお話でした。ああ、大規模サイトMTで構築してみたい。

 というわけで、かなり長くなってしまいましたが、ProNet勉強会「~MTの再構築を改善!~パフォーマンスチューニングとシステム構成の集中講座」についてでしたー。

投稿者 ymkx : 2010年3月30日 11:36 |

~MTの再構築を改善!~パフォーマンスチューニングとシステム構成の集中講座 【1】

[ReTweet This!] カテゴリ:Movable Type

 3月29日に開催されたProNet勉強会「~MTの再構築を改善!~パフォーマンスチューニングとシステム構成の集中講座」に行ってきました。講師はSixapartシニアコンサルタントの柳下さんです。柳下さんはいろんなイベントでお話をしたことあるんだけど、素面の状態で名刺交換するのは初めてかもしれない、、、。

 で、勉強会スタートです。参加者は15名程度で、セミナーと言うよりは名目通り勉強会という感じの雰囲気ですね、話の途中での質問もOKとのこと。置いてきぼりにされる心配もありませんぞ。

 再構築に関するパフォーマンスのポイントは下記の4点とのことです。

・ウェブ/ブログサイトの設計(構成)
・テンプレートデザイン(MTタグ)と設定
・サーバスペック
・システム構成(サーバ分散)

で、私みたいなエンジニアだとすぐに後半のサーバスペックだとかシステム構成の話しに突入しがちなのですが、まずはもっとソフトウエア寄りというか、設計・設定よりの話しから始まります。

 まず、『ウェブ/ブログサイトの設計』。これが重要なのは確かに理解していましたが、今まではパフォーマンスというよりは、単に構築上の問題で1つのサイトを複数のブログで構築する今年か考えていませんでした。当然ですが、再構築の観点から見れば「1つのサイトを複数のブログで構築」していれば、それぞれのブログに属するエントリー数も減るわけで再構築にかかる時間も短縮化されます。ただ、全ブログを再構築しなくてはいけないのでは全く意味がないので、そういう意味でのサイトの設計が重要になるという話しです。これは、単純な回答がある訳じゃなくて、サイト毎の特性を考えてどのような分け方ができるか等がポイントになりそうです。
 ちなみに、MTのアーカイブの中でカテゴリーアーカイブの再構築が負荷がかかるみたいです。SQL的に考えると、なんかいまいち納得できなかったりするのですが、MTの設計上の問題としてとりあえず理解しておきました。で、カテゴリー毎でブログを立ち上げてカテゴリアーカイブを使わないというのが、最も効果があるとのことでした。
 あと、当然ですが「不要なアーカイブは作成しない」というのも重要。ウェブサイトとして構築している場合、日付系のアーカイブは不要なことも多いですからね。ニュースリリースみたいなものだけ、ブログを分けるというのも手かもしれません。というか、MT5についてはサイトの作りがブログとページではっきり分かれているので、無駄にブログで構築しないというのも当然ポイントでしょうね。

 次に、『テンプレートデザイン(MTタグ)と設定』。テンプレートタグの使い方で、いろいろなことが変わるのはわかっていますが、再構築のポイントとしては如何にDBアクセスを減らすと言うことが重要。MT4.2以降では、テンプレートモジュールのキャッシュやSSI設定ができるので、やってみるべきとのことでした。これ、全然知らなかった話しですが、MTIncludeのリファレンスにもキャッシュの項目やSSI設定の記載がありますね。ちなみに、テンプレートモジュールのキャッシュおよびサーバーサイドインクルードというページで詳しく解説されています。
 また、toolsディレクトリ配下にあるmt-tmpl-testコマンドを使うと、テンプレートがどのような動きをするのか等の解析情報を見ることができるというハックも教えてもらいました。藤本さんのテンプレートの再構築状況を調べるmt- tmpl-testツールで詳しく解説されていますね。

 設定でもう一つのポイントが「再構築オプションの見直し」。この点もこれまで全然意識していなかったのですが、再構築オプションで公開キューを選択しておくと、再構築を実行したタイミングではなくrun-periodic-tasksが実行されるタイミングで再構築されるとのことです。比較的優先度の低いアーカイブなどは、「公開キュー」に設定しておくことで再構築にかかる見た目の時間は削減されます。よくよく考えると、再構築全体にかかる時間が短くなる訳じゃないんだけど、優先度をちゃんと考えて設定することで再構築という動作そのものもいろいろ考え直すきっかけにもなりそうです。完全にコンテンツが同期しないといけないという考えを捨てて、アーカイブは後から勝手に再構築してくれるよと考えればいいのかもしれないですね。
 あと、このrun-periodic-tasksですが、指定日投稿をしていない方は設定をしていない方も多そうですが(私もそのうちの一人)、実はMTのセッション情報などのDBを定期的にリサイズしたりする機能もあるらしくて(どこにもそんなこと書いてないけど)、是非設定をしておくべきとのことです。このブログも設定してないので、しておこう、そうしよう。設定の仕方は指定日投稿や公開キュー等のスケジュール処理の設定ページに書かれています。
 試しにrun-periodic-tasksを実行してみたら、PostgreSQLのdumpデータが15MBも小さくなりました。こりゃー、ちゃんと設定しておかないといけませんね。

 なんか、長くなっちゃったので、続きは下記のページでっす。

~MTの再構築を改善!~パフォーマンスチューニングとシステム構成の集中講座 【2】

投稿者 ymkx : 2010年3月30日 10:21 |

2009年12月16日

え? MT5で使えるDatabaseって、、、

[ReTweet This!] カテゴリ:Movable Type

 MT4で構築した自社の某ブログをMT5にバージョンアップしました、が、なんかおかしい。このブログは、ものすごくライトな用途だったのでSQLiteを使っており、特にバージョンアップでエラー表示は出なかったのですが、バージョンアップ後テスト投稿をしてみると、こんなエラーが表示されました。Ping送信がらみでのエラーです。

HTTPエラー: 500 Wide character in syswrite

ちょっと、ググってみたんだけど、直接的なヒントが見あたらなかったので、ちゃんとサイトを見直してみると、衝撃の表記を発見しました。

動作環境

サーバOS
Linux, Solaris/Unix, BSD
Mac OS X
Windows Server 2008 (R2には未対応)

ウェブ・サーバ
Apache
Microsoft IIS

データベース
MySQL バージョン5.0 以上
Oracle Database 11g (Movable Type Enterprise のみ)
Microsoft SQL Server 2008 (Movable Type Enterprise のみ)

実行環境
Perl 5.8.1 以上
加えてサーバへのFTPあるいは、コマンドラインでもアクセス利用環境

推奨利用環境
Internet Explorer 6.0 以降 (最新版を強く推奨)
Mozilla Firefox 3.5 以降 (最新版を推奨)

えっ? SQLiteって使え無くなっちゃったの? 、、、って、それ以前にPostgreSQLが載ってないんですけど、両方ともダメになったのか???

 で、MT4+SQLiteからMT5にバージョンアップしたMTの状況ですが、上記に書いた理由でPingが送信できない+ページの再構築をするとテンプレートが崩れた状態で表示されるようです。管理画面では、ちゃんとテンプレートセットも表示されているんだけどなぁ、、、。とにかく、何かおかしい状況になってしまったのは間違いないようです。

 Twitterで状況をTweetしてみたら、PostgreSQL・SQLiteでも使えるという返事をくれた方もいて、「MT5の公式サポートからは外したけど、一応、使える状態にはなっているんだろうな」と推測。ただ、色々設定をいじってみたけど自分のブログは相変わらずおかしい状態のママだったので、復旧を試みることに。

 まず、MT4に戻そうと言うことで、バックアップしていたMT4のディレクトリに差し替えて、、、し、しまった、SQLiteのバックアップを取るのを忘れてた、、、致命的です。試しにアクセスしてみると、みんなの大嫌いな「Internal Server Error」、、、。推測ですが、MT4からMT5にバージョンアップした際にSQLiteのデータベースがアップデートされてしまったのでしょう。
 これは、元に戻すのは無理だと思い、今度はMT5からMTのエクスポート機能でデータをバックアップ。MySQLに新しくデータベースを準備して、mt-config.cgiをSQLiteからMySQLに変更。クリーンインストール状態でセットアップを進め、インストール完了。システム機能から、先ほどのバックアップファイルをインポートすると、無事ブログが復旧しました。やー、以前にMT2.xからMT4にバージョンアップしたときも相当途方に暮れましたが(Berkeley DBからPostgreSQL)、その時も結局「MT2.xでエクスポート→バックアップファイルの文字化け除去(EUCからUTF-8)→MT4.xでインポート」という手順でバージョンアップをしたんですよね。

 そんなこんなで復旧は出来たのですが、MT5でPostgreSQLやSQLiteが使えるかどうかと言う点はグレーのまま。実際に使えてる方もいるので、先ほどの推測の通りなんだろうと思うけど、、、あれ、月曜日にMT5インストールしたよねぇ、、、おい! PostgreSQL8.4.1でフツーに新規インストールできてるじゃないか!! というわけで、とりあえずインストールは問題無さそうです。SQLiteでも大丈夫みたいですね、、、て、今再度インストールを試してみたらフツーにデータベース選択画面で、PostgreSQLとSQLiteが表示されており、インストールは完了しました。やはり、サポートはしないけど使える、っていうスタンスなんでしょうね、中の人じゃないのでわかりませんけど。あと、MT5製品版じゃなくてMTOS5を使ってるのも何かあるのかもしれませんね。

 ちなみに、こんなドキュメントがありました。

SQLite / PostgreSQL から MySQL への移行

Movable Type 5 からは、SQLite や PostgreSQL がサポートされなくなりました。
Movable Type 5 へアップグレードする際、データベースを SQLite や PostgreSQL から MySQL に移行するには、次のように設定します。

まあ、そういうことです。「サポートされなくなりました」という言葉に全てが含まれています。「使えない」のではなくて「サポートされない」という事なのでしょうね。

 ただ、公式で「サポートしない」と言われるといくら使えていても使いたくないですよね、、、。ウチの会社はPostgreSQLな会社なので、けっこーダメージでかいです。既存のお客さんも全部PostgreSQLで動いてるしなぁ、、、。


 9月にPronetミーティングでMT5の話しをしたみたいなのですが、そこに出席してればもうちょっと色々分かったのかもしれません。Pronetの数少ない特権だから絶対に参加しなきゃいけないのに、、、。

 で、その時の配付資料を見てみると、SixApartの資料に加えて、MySQL Enterpriseがらみの資料と、M$社の資料が、、、。もはや何も言いますまい。Pronet経由で質問してみてもいいけど、たぶん、むず痒い回答が来ることが予想されますのでやめておいて、チャンスがあれば中の人に直接聞いてみることにします。たぶん、結果は公開できないだろうけど。

 個人的に、MT5はより進んだCMS的なソフトウェアになっていて、もはやブログ的なCMSの思考では逆に使い辛いソフトになってしまいました。本業であるところのWeb制作で是非ともその実力を試してみたいところです。(なんという、微妙なしめ方)

投稿者 ymkx : 2009年12月16日 13:40 |

2009年7月13日

MTセットアップ時にベーシック認証をしてるとはまる

[ReTweet This!] カテゴリ:Movable Type

 や、一個前のエントリー、

MT2.65をMT4.261にバージョンアップ

なんかより圧倒的に時間が取られたのがこの話。まー、テストサーバなんかを用意してる会社の場合、テストサーバにID/PWのベーシック認証とかホスト認証をかけてるじゃないですか。で、その環境でセットアップを始めると、mt-checkとかは全然フツーに通るのに不可解な場所でInternal Server Errorが表示されて、ムッキーッ!!となるわけです。ちゃんと調べてないから分からないんだけど、たぶんセットアップしてるWebサーバからWebサーバにアクセスとかしてて、認証を通過できないのが原因だと断定。.htaccessとかを.htaccesssとかにしてみたら、あっさりインストールできました、っとな。

 やー、久々に新規セットアップしてみたんだけど、やっぱ、レンタルサーバでやっていたこともあって、MTとレンタルサーバの設定(サブドメイン設定など)を完全に疑っていたんだけど、原因は全然基本的なところにあった、ですぅーよー。ちなみに、レンタルサーバはNTTPC WebArena SuiteXでっす。これ、良くできてるサービスだよなぁ。

投稿者 ymkx : 2009年7月13日 11:44 |

MT2.65をMT4.261にバージョンアップ

[ReTweet This!] カテゴリ:Movable Type

 早々懸案だった、MT2.65のバージョンアップ問題ですが、時間がなかったこともあり正規のバージョンアップ的なルートではなくExport/Importで逃げました。

1.MT2.65のデータをExport
2.MT4.261をセットアップ(今回は別ディレクトリ、別データ)
3.MT4.261にデータをImport

正直文字コードがらみで揉めるかと思ったのですが、MT2.65側のデータがUTF-8だったこともあってか、数百件中2件の文字化けだけで無事移転が完了しました。正直、データが全部文字化けしちゃうとか最悪のシナリオも想定していたのですが、よかったよかった。ある意味拍子抜け、というか全然どういう事か分かっていない人に、「要するに俺は天才なんですよ」と言い張るネタを追加できたみたいな(ひでー。)

投稿者 ymkx : 2009年7月13日 11:33 |

2009年6月25日

MT Version 2.65

[ReTweet This!] カテゴリ:Movable Type

 で、本題。某クライアントさんのMTの移転作業をしてたら衝撃の事実が発覚です。なんだか、とっても懐かしいクラシカルな管理画面、、、フッターを見てみると、、、。

Version 2.65 Copyright © 2001-2003 Six Apart. All Rights Reserved.

おい、、、、、、、、。これ、MT4.261にバージョンアップなんて出来る代物なのか??? まずはMT3にアップグレードして、、、とか、面倒な作業が発生するのだろうか、、、。とりあえず、ローカルで色々実験をするしかないな、、、。

 MT2.xって俺が一番最初にインストールしたMTと同じバージョンか。ああ、あの案件は既に終了してるよねぇ?

投稿者 ymkx : 2009年6月25日 17:02 |

Movable Type version 4.261

[ReTweet This!] カテゴリ:Movable Type

 気がついたら、エライ細かい枝番でMTがバージョンアップしてたので、4.25からバージョンアーップ。

* データベースをバージョン 4.0070から更新しています...
* ブログ記事のテーブルを更新しています...
* アイテムの関連付けのテーブルを更新しています...
* ジョブエラーのテーブルを更新しています...
* コメントのテーブルを更新しています...
* データベースをバージョン4.0071にアップグレードしました。

無事完了、中身入れ替え+mt-config.cgiをコピーです。変更点はこんな感じか。

Movable Type 4.26 の出荷を開始します

* Taichi Kaminogoya
* 2009年6月11日

本日より Movable Type 4.26 の出荷を開始致します。Movable Type 4.26 では、多くのバグフィクスと、mt-wizard.cgi において発見されたクロスサイトスクリプティングの脆弱性対応行っています。本バージョンは脆弱性の修正も含まれておりますので、アップデートを推奨します。

Movable Type 4.25 からの主な修正です。

* mt:Entries ブロックタグで category モディファイアを利用して特定のカテゴリに属する記事のみにする場合、& や空白を含むカテゴリー名でエラーになっていた問題を解決。
* バックアップ/復元の信頼性向上
* クエリ速度を改善するためにデータベースインデックスを変更
* Movable Type 4.25 においてフィードウィジェットが表示されない問題を解決 (Movable Type Pro)
* mt-wizard.cgi において確認されたクロスサイトスクリプティングによる脆弱性に対応。

提供を開始するパッケージは次のとおりです。

* Movable Type Enterprise 4.26
* Movable Type 4.26 (Professional Pack, Community Pack を同梱)
* Movable Type Commercial 4.26 (Professional Pack を同梱)
* Movable Type 4.26 (Open Source)


Movable Type 4.261 の出荷を開始します

* Taichi Kaminogoya
* 2009年6月18日

本日より Movable Type 4.261 の出荷を開始致します。Movable Type 4.261 は、Movable Type 4.26 で発見されたいくつかの問題を修正したバージョンです。Movable Type 4.26 でのセキュリティ修正も含みますので、Movable Type 4.26 より前のバージョンをお使いの場合は、アップデートを推奨します。Movable Type 4.26 からの変更点は以下のとおりです。

* アップデートスクリプトが動作しなかった問題
* スケジュールタスク実行時に処理は実行されるが、エラーの出力される問題

* リリースノート (英語)

提供を開始するパッケージは次のとおりです。

* Movable Type Enterprise 4.261
* Movable Type 4.261 (Professional Pack, Community Pack を同梱)
* Movable Type Commercial 4.261 (Professional Pack を同梱)
* Movable Type 4.261 (Open Source)

なんか、クリティカルな話しじゃなかったみたい、、、。

投稿者 ymkx : 2009年6月25日 16:54 |

2009年3月23日

短い期間にコメントを大量に送りすぎです。しばらくたってからやり直してください。

[ReTweet This!] カテゴリ:Movable Type

 たぶん、自分で設定したんだろうけど、腹立つな(笑)

com.gif

コメント投稿エラー

コメントの投稿に失敗しました:

短い期間にコメントを大量に送りすぎです。しばらくたってからやり直してください。

投稿者 ymkx : 2009年3月23日 14:09 |

MT4.25

[ReTweet This!] カテゴリ:Movable Type

 MT4.25も出ていたのでアップグレードでっす。

Movable Type 4.25 出荷開始

「ブログ記事のスパム判定」とか「アクションストリーム 」とか面白げな機能が色々ついてますな。何となくですがMTが進んでいきたい方向が分かってきたような感じ。それが正しい方向かどうかは現時点では全く分かりませんが。

投稿者 ymkx : 2009年3月23日 10:19 |

2009年3月 4日

Movable Type 4.24

[ReTweet This!] カテゴリ:Movable Type

 いつの間にか新しいバージョンが出ていたのでアップグレードしておいた。

[重要] セキュリティアップデート Movable Type 4.24 の提供を開始
確認された問題
特殊な操作を行うと、サインインしていないユーザーが特定のユーザーのプロフィール編集画面にアクセスできてしまう。
アクセスした別のユーザーのプロフィールを編集することはできません。

あらまあ怖い。でも、編集は出来ないんだね。まー、データがもれる可能性があるって事で。

 っていうか、すぐに次のリリースが出そうな気配だね。

Movable Type 4.25 RC3 の提供を開始

モーションブログってなんじゃいか?

Movable Type 4.25 ベータ

OpenPNEで言うところの、小窓機能的なモノか?

投稿者 ymkx : 2009年3月 4日 16:56 |

2009年3月 3日

MT4iでモバイルAdSense

[ReTweet This!] カテゴリ:Movable Type

 そう、MT4iのサイトを見てたら、どうやらモバイルAdSenseが簡単に設置できるようなんですよ。

モバイル向け Adsense の設置方法

* モバイル向け Adsense のコードを取得。
o 文字エンコードには「日本語(Shift_JIS)」、サーバー サイドのスクリプト言語には「CGI/Perl」を選択すること。
o マークアップも本当なら「chtml」なのだけれど、配色なんかとの兼ね合いがあるので各自調整要。
* 取得したコードを、ディレクトリ「lib/mt4i」以下に「Adsense.pl」というファイル名で保存。コードの変更は一切しないこと。

lib
∟mt4i
∟Adsense.pl

* テンプレートの任意の場所に、下記のタグを挿入。

<TMPL_VAR NAME="ADSENSE">

げ、そんな簡単なんだ、、、。というわけで早速試してみた、おー、ホントだ入ってる入ってるー。とは言ったけど、このブログのモバイルを見てる人なんて全くいないよなぁ、、、。

投稿者 ymkx : 2009年3月 3日 17:10 |

MT4i 3.0.8

[ReTweet This!] カテゴリ:Movable Type

 そうそう、当ブログのモバイルがInternal Server Errorだったのを忘れてました、スマンスマン。

 というわけで復旧しました、原因は単純で新サーバにHTML::Templateが入ってなかったり、キャッシュディレクトリの設定がちゃんと出来てなかったりとかです。なんか、罠的に文字コード問題が潜んでいましたが、httpdのDefault Charasetとかその辺の問題でした、コメントアウトしておつけ(UTF-8とかになってた)。

 で、で、MT4i ver.3.0.8が出ていたのでついでにバージョンアップですよ。

3.0.8 での変更点
* リンクが "mailto:" の場合にはリダイレクタを経由しないように修正
* SoftBank? にて直接リンクの先頭付加絵文字が正しく表示されない不具合の解消
* index ページにおいてカスタムフィールドを表示可能に
* HTTP ヘッダーにて charset を指定
* MT4i Manager にて「CommentNotes? - コメント投稿フォーム注意書き」を削除
* cache を purge する際のログ書き込み先の誤りを解消
* 「タイトルロゴ画像の指定」において、両方を指定しないと表示されない不具合の解消
* purge_old_cache.pl のエラーメッセージの typo を修正

って、なんか『HTTP ヘッダーにて charset を指定』とかで今回の最後の罠は回避できたのかもしれぬのぉ、、、。

投稿者 ymkx : 2009年3月 3日 16:50 |

2009年1月 8日

AutoSaveFrequency

[ReTweet This!] カテゴリ:Movable Type

 なんか、MTの自動保存がうざいんですよ。タイトルとか入力してるときに自動保存が走って、いやーな変換状態になったり。

 で、こんな文書を発見しました。

ブログ記事作成やテンプレート編集の自動保存のタイミングを調整する
環境変数 AutoSaveFrequency の初期値は 5 でこれはテンプレートなど、編集中の内容に変更が発生し、5秒間何も操作が無い場合、自動保存が開始されるという意味になります。つまり、AutoSaveFrequency で設定した値が小さくすると自動保存の頻度が高くなり、大きくなると頻度が低くなるということになります。

なんだって。なんか、「操作が無い」ってのがポイントのはずなんだけど、俺がウザイなぁって思ってるのはちょっと考え事をして、その直後に入力するタイミングと自動保存がかぶってるのかなぁ、と。で、値を15にしてみました。なんか、いい感じ。

投稿者 ymkx : 2009年1月 8日 11:12 |

2008年12月17日

おそい

[ReTweet This!] カテゴリ:Movable Type

新サーバにブログを移動させたけど、なんか遅い、、、。これ、もしかしてPostgreSQLの問題だったりするのかなぁ? 速いサーバにウツしても、動作が遅いってのは全く理解できないんだけど、最近のPostgreSQLだったらわからないくもない。

って、CentOS5.2のpgは8.1.11だった、、、。

うぬー、バージョンアップするか。

投稿者 ymkx : 2008年12月17日 13:07 |

2008年10月 9日

携帯からのアクセスを振り分ける

[ReTweet This!] カテゴリ:Movable Type

 mt4iを入れてうちの携帯からチェックできるようにしたんだけど、mt4i.cgiでURLを告知するのってダサイなー。と、.htaccessでmod_rewriteすれば何とかなるのじゃないかと思ってさがしたらこんなのが転がってた。適当に.htaccessに足してみたらOKOKー。なんか、絶対にエージェントの数が足らない気がするけど、まぁ俺の使ってる携帯で見れるからいいや、みたいな。

RewriteEngine On

# For I-MODE Redirect
RewriteCond %{HTTP_USER_AGENT} ^DoCoMo.*
RewriteRule ^(.*)$ http://KEITAI-URL/ [R,L]

# For ezweb Redirect
RewriteCond %{HTTP_USER_AGENT} ^KDDI.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^.*UP.Browser.*
RewriteRule ^(.*)$ http://KEITAI-URL/ [R,L]

# For SoftBank Redirect
RewriteCond %{HTTP_USER_AGENT} ^J-PHONE.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^Vodafone.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^SoftBank.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^MOT-V980.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^MOT-C980.*
RewriteRule ^(.*)$ http://KEITAI-URL/ [R,L]

投稿者 ymkx : 2008年10月 9日 15:31 |

2008年8月20日

さらばmoblog.uva.ne.jp

[ReTweet This!] カテゴリ:Movable Type

 と言うことで、MT4.2に乗り換えていじっていたわけですが、想定通りモブログがうまくいかない。うまくいかないというか、全くエントリの投稿すらままならないわけです。このブログでは例のひらた先生のmoblog.uva.ne.jpを使用しているのですが、同じくMT4系列に乗り換えた方で投稿がうまくいかないというが。何となく、moblog.uva.ne.jpで何とかしたい気持ちもあったけど、仕事的に余裕がないので泣く泣くモブログくんに乗り換え。本当はアルファサード野田社長謹製Mooberを使いたかったけど、pm周りでエラー、、、時間がないので断念しました。

 というわけで、もぶろぐくんをテスト、最初なぜかうまくいきませんでしたが簡単に設定完了。投稿のフォーマットがmoblog.uva.ne.jpとは異なっているので、その辺のフィルタリング処理を設定して完全復活です。

 「さらばmoblog.uva.ne.jp」とか書いている割にですが、moblog.uva.ne.jpは、そのうちMT4対応するだろうから対応したら出戻ります、うんうん。

投稿者 ymkx : 2008年8月20日 09:21 |

2008年8月19日

MT3.36からMT4.2へバージョンアップ、しかもサーバも移転

[ReTweet This!] カテゴリ:Movable Type

 というわけで、「MT3.36からMT4.2へバージョンアップ、しかもサーバも移転」とか極めてレアなことをやったので、MT Dev Conにも行かずにその手順を記載します。

 まず、サーバ移転とバージョンアップってのは分けて考えるべきかどうかなんですが、結局バージョンアップの手順はソースを入れ替えるって言ういつもの手順なので、新サーバにあらかじめMT4.2のソースをインストールしてDBと静的ファイル(画像とか)を新サーバに持ってくるってことにしました。

0.DNSのTTLをみじかーくする
1.新サーバにMT4.2のソースをインストール
2.旧サーバから新サーバに静的ファイルを移動
3.旧サーバのデータベースをdump
4.新サーバにデータベースをrestore
5.DNSのAレコードの変更
6.新サーバでブログの設定を確認(パスとか)
7.新サーバでブログの再構築

って感じで、見た目はあっさり終了。しかし、ここで、テンプレートの中にMT4.2では使えないものとか、プラグインが入っていないものなどが登場。そのあたりを削除したりしてとりあえず動く状態にはなりました。でも、アレっす、見た目が全く同じなのでバージョンアップしたことが全くわからないのが難点、、、。コミュニケーションうんちゃらのあたりとか全然なので、新しくブログを作って、おいおい試していくことにしましょう。

投稿者 ymkx : 2008年8月19日 12:17 |

2008年8月 7日

Permission denied: /var/www/xxx/.htaccess pcfg_open file: unable to check htaccess file, ensure it is readable

[ReTweet This!] カテゴリ:Movable Type

 新しいVirtualサーバ設定をしたところ、403 Forbiddenになってこんなログがerror_logに表示された。

Permission denied: /var/www/xxx/.htaccess pcfg_open file: unable to check htaccess file, ensure it is readable

そう、Movable Typeを使うのでSuExec出来るように/var/www配下をホームディレクトリにしたわけです。前にも何度かしたことあるんだけど、こんなエラーははじめてだなぁ。

 というわけで、原因を探っていたのだけど、suexec出来るディレクトリってのがポイントでした。suexec出来るのに設定をしていなかったので、apacheのユーザとファイルの所有者が違っていたのが問題。パーミッションが空いていても、ユーザが違っていたら出来ないのねん。というわけで、SuexecUserGroupで設定して一件落着。

 しかし、なんでそんなディレクトリの.htaccessを見ようとするのかは不明。pcfg_openってのは全く持ってしてわかりませぬー、なんかgglと難しそうなページが大量に、、、。

投稿者 ymkx : 2008年8月 7日 11:33 |

2008年7月15日

今更だけど、Movable Typeのサービス、、、

[ReTweet This!] カテゴリ:Movable Type

 ホント、今更感が強いですが、Movable Typeを使用してWebサイトをブログ化してしまおう的なサービスをリリースしました。

 【いますぐブログ】は、『社長ブログ』や会社の『News』等をブログを利用して簡単に更新できるサービスとなります。最短納期は5営業日で、とにかく今すぐブログを立ち上げたい会社様向きです。

 【そのままブログ】は、すでにサイトをお持ちの会社様向けに、公開しているWebサイトをそのままのデザインでブログサイトに構築しなおすサービスとなります。サイトをそのままブログにすることにより、修正や更新を容易にすることが可能です。また、外部にWebの制作をされている場合はコスト削減も可能です。

まー、かなり前に一度リリースしたんだけど、結局受注する余裕が無くてお蔵入りになった企画。なんか、ブログと呼ぶかCMSと呼ぶか悩みましたけど、やっぱブログにしてみた。なんだろ、CMSってピンと来ないんだよね、一般の人たちには。で、そんな用語を使って、何となく満足する姿がちがうなぁ、と思ったり、、、なんだろね。

投稿者 ymkx : 2008年7月15日 13:31 |

2008年6月28日

load=440.11

[ReTweet This!] カテゴリ:Movable Type

 さっきの障害の件ですが、衝撃的な事実が判明しました。

red Fri Jun 27 17:37:38 JST 2008 up: 7 days, 0 users, 804 procs, load=440.11
&red Load is CRITICAL
System clock is 14 seconds off


5:50pm up 7 days, 5:21, 0 users, load average: 300.84, 336.14, 301.25
773 processes: 769 sleeping, 2 running, 2 zombie, 0 stopped
CPU states: 4.7% user, 4.2% system, 0.3% nice, 1.1% idle
Mem: 481452K av, 476340K used, 5112K free, 0K shrd, 17700K buff
Swap: 1028152K av, 507684K used, 520468K free 19592K cached

PID USER PRI NI SIZE RSS SHARE STAT %CPU %MEM TIME COMMAND
6 root 14 0 0 0 0 SW 4.8 0.0 1465m kscand
20450 web 19 0 9424 9328 1592 S 2.1 1.9 0:00 mt4i.cgi
20478 web 11 0 9416 9344 1596 S 1.6 1.9 0:00 mt4i.cgi
20326 web 14 0 9404 9156 1592 D 1.3 1.9 0:00 mt4i.cgi
20256 web 9 0 8940 8620 1568 D 1.0 1.7 0:00 mt4i.cgi
20527 web 17 0 3444 3444 1152 R 0.9 0.7 0:00 mt4i.cgi

おいおい、loadが440って、、、。初めて見ましたのこの凄まじい数値は。でもって、psがヤバイですね。mt4iは当然ですが、下の方にはmailスキャナーがわんさかです、うわーmt4iもわんさかだー21コも上がってる、そりゃロードも上がるわ、、、。

投稿者 ymkx : 2008年6月28日 01:04 |

2008年6月27日

mt4i

[ReTweet This!] カテゴリ:Movable Type

 「ん、メールが取れない、なんでやろ」、気付いたときはこんな大問題なるとは思いもしなかったよ、、、。

 サーバにssh、でもログインできない。webアクセスできない、pingは通る。メールサーバなので、自分宛のアラートも来ない、hobbitでロードアベレージを確認する、、、

おいおい、150とかかよ! hobbitでプロセスを見ると、qmail関連のデーモンやウィルスチェックのデーモンとかがわんさか。うわー、すごい勢いでスパムが来てるのか? どちらにしても、ウチの手には負えないのでレンタルサーバ会社に連絡。ロードアベレージが高めなので、一旦NICを止めてもらって(ケーブル抜くだけ)確認。10分経っても全然落ち着かない、最終手段リブート。強制リブートをしてもらう、fsckが走る、一瞬戦慄。サーバがやっとブート、でも、すごい勢いでメールサーバーが起動、ロードアベレージが上がり出す。topコマンドで状況をチェックしながら、maillogとmessagesを追う。んー、もしかしたらメールサーバが原因じゃないかも。ふと、見覚えのあるプロセスがtopに居座る、CPU消費が半端じゃない!

mt4i

あー、Movable Typeの携帯向けプログラムか、俺設置してないんだけどなぁ、、、。プログラムを探す、某ミュージシャンにただで提供していたそこにそいつは居た。

chmod 000 mt4i.cgi

ロードアベレージが下がり出す。遅延していたメールが一斉に送信され始めた、、、。こいつか、こいつだったのか、、、。ggl、出てくる出てくる、、、すまん、これはウチのサーバで動かし続けるわけにはいかない、許してくれ。ボランティアの限界だ。

 色々調べてみるとmt4iのアーキテクチャに難ありといった記述も見られる。開発元を見てると、ケッコーな頻度でリリースが、、、こりゃーだめだ。単なる趣味レベルのWeb屋さんが追っかけられる状況じゃない、、、。悪い、もうウチの会社はお遊びでWeb運営してるわけじゃないんだ、、、もう、構っては居られないんだ、、、。

 というわけで、mt4iのおかげで家庭不和になりました。っていうか、悪いのはmt4iじゃあない。ちゃんと適宜バージョンアップする必要性を理解していない、程度の低いWeb屋が居るからいけねぇんだ。もう、今日は酒なんて飲むつもり無かったのに、飲まずにはいられん!!!!

投稿者 ymkx : 2008年6月27日 23:26 |

2008年6月24日

pluginの設定忘れてた

[ReTweet This!] カテゴリ:Movable Type

 なんか、エントリを上げようとしたら、こんなメッセージが。

テンプレート「メインページ」の再構築に失敗しました: タグでエラーが発生しました: MTEntryLinkタグが、エントリーのコンテキスト外で使われた可能性があります。コンテナの外に誤って記述していませんか?

なんじゃそりゃって思ったのですが、単にプラグインが設定されていなかったのが原因。そのあとextlibへのファイルアップも忘れてて焦りましたが、設定完了で万事OK。

投稿者 ymkx : 2008年6月24日 16:57 |

MT 3.36

[ReTweet This!] カテゴリ:Movable Type

 すっごい、今更ですが、このブログをMT 3.35からMT 3.36にバージョンアップしました、なんでやねん。

 というのも、MT4.x系へのバージョンアップ前に3.36にしておいてねん、という公式文書が存在しているからに他なりませぬ。で、久々にバージョンアップしたらまんまと罠にはまる、、、。が、単にサーバにファイルをアップロードした際の問題の模様。サーバにtgzをアップして解凍したものなら、なんの問題もなく無事起動ですよ、ええ。

 というわけで、MT4.2が出たらバージョンアップする予定。

投稿者 ymkx : 2008年6月24日 16:42 |

2008年3月 3日

エラーが発生しました: Can't call method "path_info" on an undefined value at lib/MT/App.pm line 1200.

[ReTweet This!] カテゴリ:Movable Type

 なんか、トラックバックが出来ないことに気付いた。直接アクセスしてみると、

エラーが発生しました: Can't call method "path_info" on an undefined value at lib/MT/App.pm line 1200.

だってー、なんじゃそりゃ? って、なんでこんなエラーが発生するのん? いつから発生してたの???

 で、解決策はこんなのが転がってた。

MT::App::Trackback.pmの修正 on MT3.32ja
ごめん眠くてパッチ作るの面倒くさいので、最終的に(o)さんあたりがUO Patchとしてまとめてくれるのを期待して文章で書くと、MT::App::Trackback.pmの107行目

if (my $pi = $app->path_info) {
これを

my $pi;
eval {$pi = $app->path_info};
if ($pi) {
こう書き換えたらエラーでなくなった。

あっさり治った、サンキュー。なんだろ、MT3.32jaからバージョンアップしてきたのは事実だから、ここに来て上書きバージョンアップじゃダメな部分が出たのかねぇ。っていうか、いったいいつからトラックバック落ちてたんだ、、、ひどいなぁ。おれ。

投稿者 ymkx : 2008年3月 3日 12:13 |

2008年2月22日

MT4LP5 vs FN&F3開幕戦

[ReTweet This!] カテゴリ:Movable Type

2008年4月5日開催、MT4LP5

 行きたい、行きたい、超行きたい! でもね、その日は外せないんだよ、FSWでFN&F3の開幕戦、、、これは絶対に外せない。新規参戦組がいきなり優勝とかした日には、取り返しがつかないことになるからなぁ。でも、ProNetを今年も継続することにして、MT4.1発表以降再びMT熱が高まっていることは間違いない(自分的にですが)。ああああ、どうしようどうしよう~、情報処理学会と同じパターンになってしまった、、、。ちなみにそちらはSuperGTを選択、合掌。

 というわけで、参加した場合のセッション選択。

・B1:プラグイン開発と応用/関根 元和(エムロジック)
・B2:プラグインを利用したカスタマイズ/藤本 壱
・B3:管理画面のカスタマイズ/野田 純生(アルファサード有限会社)
・A4:MTタグ、JavaScript を用いたサイトのカスタマイズ/荒木勇次郎(小粋空間)

なんという、豪華な講師陣!!! 全部RSSリーダーに入ってる講師の方たち。個人的にはあるファサードの野田社長に怒られてみたいです(変)。んー、昼からか、、、でも、予選方式が変わってるし、F3の開幕戦もやるわけだし、、、国本京佑(兄、ベビーフェイス)vs中嶋大祐(弟、スナイパー)のF3での対決は見物だー。って、なんで大祐がRealじゃないんだ~!! って、昨年のランキングを考えれば当然ですが、、、。

 というわけで、こんな豪華な面々を前にですが致し方ないです、、、あー、でも気が変わるかも。当日のFSWが大雪とか台風とか、花粉でコースが使えない(ありえぬ)とか、富士山噴火(あをによし)とかでレースが出来ないかもしれないしなぁ。って、富士山噴火したらMT4LP5も中止になるって、、、。

投稿者 ymkx : 2008年2月22日 11:44 |

2007年8月23日

MT4カタログ到着

[ReTweet This!] カテゴリ:Movable Type

 はい、MT4のカタログが来ました、まぁ我々が中身を見てどうって言う内容じゃないのですが、やっぱ今回の値上げは納得いかないなぁ。まぁ、プラグインの問題もあるし、前々から書いている6A社のスタンスが気にくわないので、しばらくMT3.35でがんばりますー。

投稿者 ymkx : 2007年8月23日 14:35 |

2007年8月18日

mt-rebuild.plって

[ReTweet This!] カテゴリ:Movable Type

フリーじゃないのね、、、$10ねー、自分で書きますかここは一つ。

投稿者 ymkx : 2007年8月18日 00:28 |

2007年8月 8日

Movable Type 4 評価版

[ReTweet This!] カテゴリ:Movable Type

 おー、てっきり間に合わないと思っていたMT4ですが、本日無事リリースされるみたいです。ProNet限定なのかもしれませんが、評価版がリリースされていました。早速、入れてみよう、そうしよう。

 入れました。もー、βリリースとかの回数が多すぎで、しかも最初と色々変わりすぎててよく分りません。

 結局の所、3系で作ったサイトの4系への移行は完全に見送りです。とりあえず、このブログだけでも正規ライセンスでバージョンアップするかもしれませんが、あ、こっちよりは会社のブログを上げるべきかな。

 妙なSixapartのライセンス戦略も気にくわないので、しばらくは様子を見守ってWordPressいじりを続けたいと思います。

投稿者 ymkx : 2007年8月 8日 13:42 |

2007年8月 7日

MT-4.0rc4-ja

[ReTweet This!] カテゴリ:Movable Type

 なんだか知らない間にどんどんリリースされてる、アナウンスも間に合ってませぬ。

 入れました。あれ? WYSIWYGで画像のリサイズが出来るようになってた。

 で、よそうですが、やっぱ明日のリリースは無理な気がする。出しちゃったとしたら、ちょっとやばいのでは、、、。最後のリリース版が8/6だからな、、、。

投稿者 ymkx : 2007年8月 7日 20:29 |

サーバ移転しました

[ReTweet This!] カテゴリ:Movable Type

 たぶん誰も気付いていないと思いますが、密かにサーバを移転しました、なんちゅーか色々あって今のサーバは廃止しなくてはならないのさ。動作的には問題ないと思いますが、何かありましたらコメント下さいな。

投稿者 ymkx : 2007年8月 7日 19:54 |

2007年8月 2日

moblogの内容を表示

[ReTweet This!] カテゴリ:Movable Type

 プラグインの勉強も兼ねて、別ブログに分けたmoblogの内容を表示させるテンプレートを組み込んでみた。使ったプラグインはmultiblogとmtregex。本当はEntryImagesで何とかしたかったけど、他のブログからの読み込みはできなさげだったので、multiblogでエントリーを読んできてregexでタグを調えてみた。

 って、ここまでやるんだったらプラグイン書けよなぁ、、、。

投稿者 ymkx : 2007年8月 2日 15:47 |

2007年8月 1日

ProNetミーティング [8/1]

[ReTweet This!] カテゴリ:Movable Type

 行ってきました、泉ガーデンタワー。なんか、乗り換えが多いからめちゃくちゃ遠い印象がありましたが、近かった。よくよく考えれば六本木一丁目の改札から徒歩30秒だからな、入り口が。

 で、内容ですがProNetオンリーなので詳しくは書きませんがMT4関連の新機能だとか、MT3から変った点などを聞くことができました。MTを扱っている会社として聞きたいことは聞けましたが、それもここには書かなーい。

 ただ、一つ言えることは最後の技術セッションはProNetミーティングで話す内容としては、あまりに技術よりすぎたのでは? もうちょっと、ライトで表層部分について聞きたかった人が多いんじゃないのかなぁ。

 お、MT Open SourceはMT4とは別物で、しかも秋頃リリース目標なんていうゆるーい発表に限られていましたよ。

 あ、画像の件聞き忘れた、、、。というか、このミーティングを通してある確信を得てしまったからなぁ。

 んーと、このMT4ってたぶんSixApartとMTに関わるビジネスをしている会社の将来を大きく動かすモノになると思います。少なくとも、正式版リリース後の中身次第ではウチは大きく動くんじゃないかなぁ。MTを軸にビジネスを進めている会社にとっては、色々な意味で悩ましい自体になるかもしれない。いやいや、イケイケで行っちゃえばいいんだよな、そうだよな。

 というわけで、いろいろ口ごもり気味。正式版リリース後に、ウチの会社としての反応を示そうじゃないか、はっはっはー。

投稿者 ymkx : 2007年8月 1日 17:38 |

MT-4.0-rc1b

[ReTweet This!] カテゴリ:Movable Type

 MTのリリース候補版が出たのでアップグレーでぇぃ。あれ? アップグレードスクリプトが英語デンがな。って、それ以前にエラーが出ます。エントリーを保存しようとしたら。

エラーが発生しました。
close Can't call method "entry_class" on unblessed reference at lib/MT/WeblogPublisher.pm line 935.

だってさー、アップグレードミスったかな? なんか、エントリーの書き込み自体はできているんだよねぇ、不可解。あ、でも再構築ができない。っていうかファイルのパーミッション??? そんなことないよなぁ。

 とりあえず、再度、ファイルを上書きしやす。あらー、だめですねぇ。しょうがないので、ソースを総取っ替えしてmt-configをコピーしたら、うごいたうごいた。アップグレード方法が間違ってるのかなぁ? その件は、こちらで言及されてた~。オツです、オツです。

 で、ログイン画面とかが英語で表示されちゃう件は、ここで言及ありでした。

 そして使った感想。やっぱ、画像のアップロード周りが気にくわない。画像をアップしようとして、画像を選択もしくはアップロードすると「ファイルオプション」という画面が出て、

□ ポップアップウィンドウで元の大きさの画像にリンクします。

っていうチェックボックスが出るのですが、これがバグなのか未実装なのか機能しない。機能しないって言うか、たぶんCSSの指定のミスでチェックボックスじゃない場所をクリックしてもクリックしたのと同じ状態になる。あと、これって、サムネイルを作る機能じゃなくってテキストリンクを表示するだけなんだ、、、ブログ記事に画像を表示との関係を考えると、サムネイルが作成されるのが当然のことなんだと思うのですが、、、。サムネイル作りたいですよね。なんで、今のMTでできる機能を削除してしまうのでしょうか、相当理解に苦しみます。リッチエディタで画像サイズが変えられたりすれば便利なんだよなー。今日のProNetミーティングでSixapartがどういう考えなのか聞いてみようかなぁ。って、これぜったいに正式リリース間に合わないよ。

投稿者 ymkx : 2007年8月 1日 11:39 |

2007年7月18日

MT4 β7入れた

[ReTweet This!] カテゴリ:Movable Type

 入れました、思わずβ6をとばしちゃいました。

 で、入れた感想でもいきますか。

 あら、上書きするだけでよかったのね。って、いつの間に管理メニューに日本語メッセージが、とか。もはや、前回いじったときとの差がよく分からんがね。なんか、サムネイル機能が実装されないってのはなんかの策略なのか?? 本当は実装されてるのかなぁ? あと、スパムの判定なんだけど、これってちょっとはインテリジェンスな機能なのかなぁ?? 分からんことだらけだー。

 うぉ、今気づいたけど標準のプラグインでこんなの入ってるよぉ。

MultiBlog バージョン 2.0
MultiBlogを使うと、他のブログにあるテンプレートコンテンツあるいは通常のコンテンツを公開することができます。再構築時の依存関係やアクセス制御を設定することもできます。

驚いたよ、驚いたー。MTEの位置づけはどうなるのじゃ??

投稿者 ymkx : 2007年7月18日 19:15 |

2007年7月11日

MT4ベータテスト延長

[ReTweet This!] カテゴリ:Movable Type

 7月18日にリリースされる予定だったMovable Type 4ですが、リリース日が8月8日に延期になったようです。まー、ついこの前β6が出たばっかりだしね、、、。どちらにしても、久々のメジャーバージョンアップなので妥協せず作り込んでもらいたいものです。

 もう一回くらい正式リリース日が延期される予感、、、。

投稿者 ymkx : 2007年7月11日 18:25 |

2007年6月29日

Movable Type Beta 4

[ReTweet This!] カテゴリ:Movable Type

 ふおー、出てました、早速いんすとーるぃ。けっこー、バグが埋まったらしいけど、バグ自体を観るところまで到達していないので変化が不明。

投稿者 ymkx : 2007年6月29日 12:51 |

2007年6月26日

Movable Type 4 beta 3

[ReTweet This!] カテゴリ:Movable Type

 もいっす、MTβ3が出たので早速インストールしました、おー、メニューが日本語化されてる~。なんていうか、アレを意識しすぎじゃないか? チミチミ。

 で、やっぱ検証って実際に使ってみないと何とも言えない部分が多いから、とりあえず正規版が出るまで向こうにエントリを重ねようかなぁ。

 とか。あ、MT4β3、使ってみたい人はコメント下さい。アカウント教えますよ、いひひ。

投稿者 ymkx : 2007年6月26日 16:34 |

2007年6月19日

Movable Type 4 beta 2

[ReTweet This!] カテゴリ:Movable Type

 ういっす、Movable Type 4 beta 2をインストールしてみましたよん。まだ、インストールしてちょっといじっただけなので何とも言えませんが、WYSIWYGがpoorだと思いますが、画像をドラッグアンドドロップでいじれる点はナイスかも。あああ、でもなんかでかい画像とかアップしちゃうときのリサイズとかできないのね、全く、、、。これはマイナスだ~。って、本当は実装してるのかもしれないけど、慣れないからよくわからんちん。ちなみに、インストール時に日本語を選んだのにメニューは英語のままなのねん、、、。

投稿者 ymkx : 2007年6月19日 16:46 |

2007年6月 6日

Movable Type 4

[ReTweet This!] カテゴリ:Movable Type

 そうそう、シックスアパートがMovable Type 4を発表しましたね。機能はともかく基本ライセンスの値段を上げていることからも、一般向けよりプロユースを目指していると考えてよさげですね。あれ? そういえば個人向けのフリーライセンスってどうなったんだろう。あ、記述がありました。

・個人ライセンスは従来と同様、無償でご提供します。

だそうですよ。

 3系列からのバージョンアップには21000円かかるとのことですが、今3系列のライセンスを購入するとただでバージョンアップですか、、、なんだろ、あまりその手のごちゃごちゃをしない方がいいと思うんだけどなぁ。某社がはまった方向に行っちゃうのかなぁ。

 最近はクライアントに導入するのはほぼMT一本に絞ってますが、本当は色々なソフトを試した評価したい。でも、余裕がないんだよねぇ、まったくもってして。あと、結局強烈なプラグインラインナップは相変わらず魅力的ですからね。

 機能的な点については実物を使ってみないと全くわからないのですが、とりあえずリリースから拝借するとこんな感じらしい。

● インターフェースの全面刷新
- より使いやすくなったインストーラー
- HTML の知識がなくてもリッチな文章を作成できるWYSIWYG エディター
- 画像などファイルのアップロードや管理が簡単に行えるファイルマネージャー
- 入力中の記事の自動保存
● CMS として機能強化
- ブログ記事以外のHTML ページの作成
- 複数ブログをまとめたポータルページの構築
- 画像やファイルを含む、完全バックアップ
- ブログのクローン(コピー)機能
● コミュニティ機能の搭載
- ユーザー管理機能の強化
- コメント投稿者へのアカウント発行も可能

うーん、確かに我々プロにとっては有効な機能なのかもしれないけど、一般ユースには向かないかもなぁ。でも、高価なCMS群に対するインパクトは計り知れないなぁ。コミュニティ機能搭載はちょっと面白そうかも。

 ただ、エントリー数が5000件を越えてみたり、トラックバックスパムでサーバが落ちちゃう見たいなパフォーマンスの面がどうなってるのが最も気になる点でもありますよ。まー、一応ProNetなので試す機会はありそう、いろいろ試してみようそうしよう。そんな時間があるかなぁ、、、。

投稿者 ymkx : 2007年6月 6日 10:28 |