普段あまりMTは使わないのだけど、先日同サーバ内で複製する必要があったので手順をメモ。

本来MTはウェブサイト・ブログの出力先を変えることでステージング環境もすぐ作れるのですが、このケースでは記事内のデータ置換やテンプレの細々とした修正が必要だったので別にMT管理画面を設けることに。

調べた所、一般的にMTを複製する場合は以下の方法だそうです。

・バックアップ機能を使う
・「エクスポート」と「インポート」によるブログ記事データの移行

参考:http://www.movabletype.jp/faq/export-blogs.html

この場合どちらも、同じバージョンのMTのインストールが必要とのこと。
MTはバージョンごとの互換性はほとんど無いと聞いているので、当然でしょう。

で、ここで一つ疑問。

「ファイル+DBを移して設定ファイルを弄れば、復元出来るんじゃないのか?」

探してみたところ、やはりありました。
参考: http://www.stereo-kitchen.net/20131001/

この場合、想定されるのは以下の手順らしいです。

旧サーバ
1.ファイル一式をローカルにDL
2.dbのダンプ取得

新サーバ
3.ローカルからファイル一式をUL
4.ダンプデータ内のURL,パスを変更
5.設定ファイルmt-config.cgiにて必要箇所を調整
6.ダンプデータのインポート
7.再構築

早速試してみました。

1〜3までは問題なし。

4でちょっと悩みましたが、テンプレートと記事テーブル内のデータは必須だろうから、そこだけ置換します。

今回は先にインポートしたので、sqlを走らせます。

UPDATE mt_template
SET template_text=REPLACE(template_text, “old_url”, “new_url”)
where template_text like “%old_url%”

色々なパスの形が混在してたのですが、そこは試しながらやりました。

5の設定ファイルもシンプルなので悩むところはなし。

ですが6のアップロード後、管理画面へアクセスしたところパーミッションで弾かれてしまいました。

現サーバ内のパーミッションを確認したところ、ファイルアップロードの際に644になってしまったファイル群があったので、755へ変更しました。

そしてウェブサイト、ブログの出力先を変更します。

具体的にはウェブサイトを選択→全般設定から公開パスを変更します。

そして再構築したところ、無事に生成できておりました。

今回は記事やテンプレが多かったので、パス変更のデバッグが大変でした‥

 

追記

WP4.1にアップデートしたので、Twenty-fifteenに変えてみました。

Twenty-Twelve が好きだったのですが、同じようにブログ向けのさっぱりしたレイアウトでいい感じです。


Leave a Reply

Your email address will not be published. Required fields are marked *