MTの総入れ替えに挑戦

| コメント(2) | トラックバック(1)

Movable Typeのインストール2週目にチャレンジしてみました。目的としては、MTの文字コードがUTF8が良いのかEUCが良いのか結論が出せなかったので、将来的に「まるごと文字コードの移行」ができるのかどうか試してみたかったからです。(今このウェブログはEUCですが、そのうちUTF8に切り替えるかもしれません)
結論から言うとMTの総入れ替え&文字コードの全面切り替えは、手順どおりにやれば問題なくできる事が分かりました。今回私がやった手順を以下に残しておきます。

ここから先の説明は、「BloggerとMovable Typeではじめる ウェブログ入門」という書籍に書かれているMovable Typeのインストール手順をベースに書いています。これ一冊あれば間違いなくMovable Typeのインストールができるので、基本的なことはこの本を参考にしてください。

  1. まず、移植する元のMT(以下mt1と呼ぶことにします)の管理画面で「Import/Export」に進んで、「〇〇からエントリーを書き出す」のリンクを右クリックして保存(Winの場合)、「wandering-wind.txt」等のファイル名でローカルに保存します。
  2. 次に、「ウェブログ入門」の「Movable Typeをインストールしてみよう」の手順にしたがってMTを移植元とは別のフォルダ名でインストールします。(こちらをmt2と呼ぶことにします)
  3. このとき文字コードの変更をしたい場合は、別の文字コードで日本語化パッチをあてます。(私の場合1個目のmt1はEUC、2個目のmt2はUTF8です)
  4. mt2のインストールが完了したら、同じユーザ名で初期設定をして、ウェブログの新規作成をします。また、「BLOGの設定」で移植したいウェブログと同じ設定を入力します。(ここは完全に同じじゃなくても大丈夫です)
  5. 次に、mt2をインストールしたフォルダの直下に「import」というフォルダを作成してパーミッションを「777」にします。その中に先ほどバックアップした「wandering-wind.txt」をアップロードします。(このとき、このtxtファイルの文字コードがmt2の文字コードと同じになるようエディタ等で保存しなおします)
  6. mt2の管理画面で「Import/Export」→「エントリーの読み込み」を実行。その後「サイトのRebuild」→「すべて再構築」をかければ移植元のエントリーやアーカイブが反映されます。
  7. その後、各種テンプレート内容の移植や投稿者のプロフィール設定なども別途入れなおしましょう。
手順 6. で特に注意が必要なのですが、ここで下の図に示したどちらかの項目を設定しないとエントリーの読み込みは実行できません

mt_restore1.gif

このウェブログのように複数の投稿者で書いている場合は、「パスワード」の方に新たにパスワードを入力しなければなりません。こちらにパスワードを入力して読み込みを実行すると、各投稿者のパスワードはいったん統一されてしまいますが、移植元の投稿者名をそのまま引き継ぐ事ができます。
「エントリーの投稿者を自分にする」にチェックを入れた場合は、複数の投稿者がいた場合でも、全てのエントリーの投稿者が初期化されてしまい、新しいmt2で設定したユーザ名で上書きされてしまいます。(投稿者が1人の場合はこちらでも不都合ないかもしれません)
最初ここがよく分からなかったのですが、「エントリーの読み込み」をクリックした後の画面が文字化けしているためです。ソースを保存するとここだけ日本語化されず西ヨーロッパ言語(ISO)になっているようです。
mt_restore2.gif
ブラウザでソースの表示をすれば日本語でも内容を確認できるのですが、上記のどちらかを設定しないとエラーメッセージが、どちらかが設定されていればエントリーの読み込みの進行状況→完了した旨がテキストで表示されます。その後はブラウザのバックボタンで戻るしかなさそうです・・・。

さて、以上の手順でやればEUC→UTF8にウェブログを丸ごと移植できることが分かったのですが、1点だけ問題が出てしまいました。移植元と移植先のウェブログで、各アーカイブのhtmlファイル名が同じにならなかったのです。これは私が元のウェブログで変にRebuildしたりファイルを消したりしたのが原因かもしれないのですが、これでは元々あったページとURLが変わってしまうので、リンクしたりトラックバックしてくれている人がいたら不都合というか、けっこう迷惑な気がします。どんなルールでファイル名を決めてるんでしょうか??
これについてもできれば何とかしたいので、以前読んだFTPベースでアーカイブを丸ごと移植する方のやり方もそのうち検証してみようかと思います。その場合はアーカイブのhtmlファイルも全部utf8に変えなきゃならないのかな・・・?

トラックバック(1)

LushWood -みみログ- - 文字コード変更 (2004年3月12日 17:05)

以前からやろうやろうと思っていたMTの文字コード変更(EUC→UTF-8)でしたが,勉強の合間にやってみました.所要時間約1時間なり.これで,どんな文字でも書けます. 例:絵文字 〓☆〓〓 もしかしたら文字コード変更したことで文字化けなんかが起きたり,変な動作をする... 続きを読む

コメント(2)

この件についてその後調べてみたのですが、MTサイトを移植する際にアーカイブのHTML名まであわせるのはなかなか難しい問題みたいですね。サーバ移転ぐらい誰しもいつかは突き当たる問題だというのに・・。

Blogデータのインポート時はID番号に注意
http://kengo.preston-net.com/archives/000431.shtml

[Blog_users_ml] Re: サーバー移転について
http://ml.dropcontrol.com/pipermail/blog_users_ml/2003-June/000290.html

私はBerkeley DBを使っているので、DBディレクトリの丸ごと移植というのを試してみてもいいのですが(文字コード変更でもできるかな?)、だんだんファイル名なんかにこだわらないぐらいの方がMTらしい「進んだ」考え方なのかな~、という気もしてきました。

この記事、本当に助かりました。

私のサイトも複数の筆者で書いているのですが、Movable Typeを2.64から2.65に差分バージョンアップしたあとで筆者の追加をした瞬間、管理者権限を持つアカウントが吹っ飛んでしまい、管理画面が一切表示されない悲惨な状態になりました。

幸い、バージョンアップ直前のデータをエクスポートしていたので、2.65フルバージョンをインストールし直し、この方法でデータのインポートも無事成功しました。

なお、2.65ではご指摘されている「各投稿者のパスワードはいったん統一されてしまいます」という現象は発生しませんでした。各投稿者のパスワードはそのまま引き継がれています。バージョンアップで改善されたものと思います。

コメントする

このサイトについて

多摩川のほとりでのんびり暮らす3人家族の日常と果てなき好奇心を綴ったブログです。

最近のコメント

バックナンバー