サーバー移転の手順

XREA Plusの場合

  1. 新サーバーに「web.level-k.jp」のディレクトリを作成する。これは、DNSの割当てがまだ旧サーバーに向いているためで、手動で行う。
  2. 「web.level-k.jp」内にWordPressデータをアップロードする。
  3. 現在使用しているテーマとプラグインも追加でアップ。空の.htaccessファイルもアップしておく(パーミッションは「666」)。
  4. 新サーバー用のwp-configファイルを作成しアップする。
  5. 新サーバーのWordPressにIPアドレスでアクセスする。URLをindex.phpまで含めないと認識しなかった。
  6. 旧サーバーのWordPressからエクスポートしたWXRファイルを新サーバーにインポートする。
    ダッシュボードにログインし、「管理>インポート」で、エラーが発生しました。アップロードしたファイルを…に移動できませんでした。というメッセージが出た。
    このエラーはパーミッションの問題かと思い、変更すると、次の画面「投稿者の割り当て」に進めた。ここでは、インポートした投稿や下書きの編集/保存を簡単にするために投稿者名を変更することができるようだ。添付ファイルののインポートはないので、チェッックしない状態で、「実行」。「実行」ボタンを押してから結構時間がかかった挙句にうまくいかない…
    が、何度か試したところ、インポートできたようだ。何度もボタンを押したせいだと思うが、サブカテゴリーが重複しまくっていた。手動で削除。サイドメニューとお問い合わせフォーム、パーマリンク設定もなぜか反映しなくて、面倒だから手動で再作成した。
    後記:他の問題解決の際に気がついたが、これは適切な場所にアップロードができなかったからかもしれない。「設定>その他の設定>アップロードするファイルの保存場所」が「wp-content/uploads」になっているか確認すること。また、「uploads」フォルダは最初から入っているが、これを削除してから、同じものを作成しパーミッションを適切に割り当てる。

画像のアップロード

む、画像がアップロードできない!
調べてみると、XREAのPHPはSAFE MODEで動いているということがわかった。

このサイトを参考に、.htaccessファイルを追加したが、それでもアップロードできない。サーバー内を覗いてみて分かったのだが、本来格納されるべきuploadsフォルダではなく、一つ上の階層にアップロードされていた。
これは…もしかしたらインポートがうまくいかなかったのと同じ問題なのではなかろうか?
というのも、画像がアップロードされてしまった場所に、インポートのファイルらしきものもあったからだ。

設定を見直してみることにする。
すると、「設定>その他の設定>アップロードするファイルの保存場所」が「wp-content」になっていたので、「wp-content/uploads」に変更した。これで解決だと思ったのだが、やはりアップロードできない。前とは違って、uploadできないというエラーメッセージが出るのだ。パーミッションも問題ないのに。そこで、元々入っている「uploads」フォルダを削除し、自分で同じファイル名でフォルダを作り、パーミッションを設定してみた。

すると! 無事アップロードが出来たのだ。なぜこの作業で出来るようになるのかはサッパリ分からないが、とりあえず問題は解決。

管理画面に入れなくなった!

画像のアップロードができるように試行錯誤している過程で、設定の「WordPress のアドレス (URL)」に独自ドメインではなくサーバーのURLを入力してみた。しかも間違っていたようで、管理画面に入れなくなってしまった。サイト自体もCSSが無効になった情けない状態に。管理画面にログインしようとすると、not foundになってしまう。ググってみても、適切なものが見当たらないのでデータベース内に格納されている情報を全部チェックして、間違ったURLが格納されている箇所を探し出し修正したら、やっと元に戻りましたとさ。

  • 対処方法:phpMyAdminでwp_options内のsiteurlを修正

カテゴリーの順番を変更する

WordPressのデフォルトは、カテゴリーの順番が自動で決まってしまうので、任意に変えるためのプラグイン。階層には対応していない。個別にマージンの設定ができるので、擬似的な階層表示は可能。

パーマリンク設定

デフォルトのままだと、URLがあまり美しくないので、カスタマイズする。その方がSEOにも有効なはず。
設定方法:空の.htaccessファイルをサーバーにのせ、パーミッションを「666」にする。
ダッシュボードの設定内にパーマリンク設定があるので、カスタム構造を選び「/%category%/web%post_id%.html」とした。