さくらのレンタルサーバにWordpressを設置、WordPress MU Domain Mappingを導入してサブドメイン形式でマルチサイトを導入……みたいなことをやっていたのですが、追加したサイトでアップロードした画像が表示されなかったので、ちょっと調べてみたりしていました。

参考

現象

「メディア」からアップした画像が表示されない。ちなみに画像のURLは「http://***.***/files/{year}/{month}/{filename}.jpg」を呼びに行こうとしている。
確認したら「/wp-content/blogs.dir/{blog_id}/files/{year}/{month}/{filename}.jpg」に実ファイルはアップされていて、ブラウザから「http://***.***/wp-content/blogs.dir/{blog_id}/files/{year}/{month}/{filename}.jpg」を直接見に行くと表示もされる。諸々確認した結果、どうも.htaccessの設定の都合で /wp-includes/ms-files.php を呼べていないっぽい。

修正

.htaccessを下記のように修正。
修正前
[plain]RewriteRule ^files/(.+) wp-includes/ms-files.php?file=$1 [L][/plain]
修正後
[plain]RewriteRule ^(.*/)?files/(.+) wp-includes/ms-files.php?file=$2 [L][/plain]
これで「http://***.***/files/{year}/{month}/{filename}.jpg」でも参照可能になりましたと。.htaccessまわりは設定が恐いね……。

FC2ブログからWordpressに乗り換えたわけですが、FC2のバックアップはMT形式のようで、そのままWordpressに移行が可能です。が、いくつか移行できないものもあったので、備忘録がてら下記にバックアップ手順とその注意事項を記載してみます。
なお、この記事は2011/12/25頃の内容となります(WordPressのバージョン3.3)。

インポート手順

  1. FC2ブログの「バックアップ」からブログデータをダウンロード
  2. ダウンロードしたファイルの文字コードをUTF-8に変更する
  3. WordPressの管理画面からインポートする

手順的にはおおよそ上記の通りです。以下、詳細。
続きを読む