ワードプレスのサーバー&ドメイン引越し手順まとめ
先日、このブログのドメイン変更とサーバー移転を行ったんですが、その際の手順をまとめてみました。
単純に移転作業なだけでなく301転送など自分なりにSEO(検索エンジン最適化)を考慮しました。
移転とドメイン変更の理由としては以下の2点です。
- 利用していたロリポップサーバーの転送量の目安・1日/5GBに迫ってきた。
- サーバー移転のついでに独立したドメインにしようと思った。
環境を簡単に。
引越し前 | 引越し後 | |
---|---|---|
サーバー | ロリポップ | ミニバード |
ドメイン | http://topics.seory.jp/ | https://topick.jp/ |
CMS | ワードプレス3.0 | ワードプレス3.1 |
ミニバードは、比較的新しく登場したサーバーなんですが、友人からの評判が良かったのと、転送量の制限がなかった(常識の範囲内での利用が可能)ので今回試してみる意味もあって使う事にしました。
作業前に注意点3つです。
- あらかじめ移転先のサーバーやDNSなどの設定を行って、使える状態にしておいてください。
- 移転元と移転先のワードプレスのバージョンを同じにしておいた方がいいので、移転元のバージョンが古い場合は管理画面から更新しておいてください。
- FTPクライアント(ソフト)は、FFFTPをお使いの場合ファイルが多いと途中で止まってしまうことが多々あるのでALFTP(フリーソフト)やSmartFTP(シェアウェア)などを使った方がいいです。
また、今回の移転は、ドメインとサーバーを変更するので、ドメインだけ・サーバーだけの移転とは大きく異なる手順になります。
移転前サーバーにあるワードプレス管理画面、ダッシュボードに最新バージョンへのアップデートリンクがあるので「更新してください」から進み、説明を見ながら最新バージョンにします。
すでに最新バージョンの場合はそのままでOKです。
次に移転前のサーバーから、すべてのファイルをローカル(自身のハードディスクなど)にコピー保存します。
ワードプレスの最新バージョンを公式サイトからダウンロードして解凍したファイルを、丸ごと新しいサーバーにアップロードします。
インストール作業はここでは行いませんので、アップロードするだけで次へ進みます。
最初の作業で、旧サーバーからダウンロードしたファイルを丸ごと新しいサーバーにアップロードする方法もあるのですが、環境によってはエラーになる場合があるので、このように公式サイトから新たにアップする方法にしました。
ロリポップ管理画面左にある「WEBツール」メニュー内の「データベース」からユーザ名・パスワードを入力、お使いのサーバを選択し『phpMyAdminを開く』にログインします。
左上にあるデータベース名をクリックします(information_schema以外のもの)。
進んだページにある「エクスポート」をクリック
メニューにある『エクスポート』をクリック。
「データベースのダンプ(スキーマ)表示」にある「エクスポート」は必要なテーブルを選択、わからない場合は全選択にして、下のSQLにチェック、さらに下にある「ファイルに保存する」と右メニューにある「DROP TABLE / VIEW / PROCEDURE / FUNCTION / EVENT を追加」にもチェックを入れます。
他の設定は画像の通りで問題ありません。
右下にある「実行する」ボタンを押してSQLファイルを保存します。
サイトの規模にもよりますが、読み込み完了まで数分かかる場合があります。
はっきりとはわかりませんが、90MBを超えるくらいのファイルになるとうまくインポートできないようです。
ファイル容量を増やしてしまうようなプラグインがある場合は、テーブルを選択ではじいておいた方がいいです。特にアクセス解析系のプラグインは結構容量が大きくなっているはずです。
また、「gzip 形式」で保存するとかなり容量を圧縮できますが、圧縮・解凍ソフト(フリーであります)が必要になります。
この作業では、テキストエディタが必要になります。ここではサクラエディタを使って説明します。
上の作業でエクスポートしたMySQL(データベース)のデータをテキストエディタで開いて、置換機能で古い部分を新しいものに変更します。
変換前のドメイン部分『topics.seory.jp』を『topick.jp』に置換。
『topics.seory』を『topick』に置換。
今の時点ではとりあえずこの2点を変更しておけばOKです。
画像のように変換前・変換後を入力して「すべて置換」をクリック。
保存の際はお使いの文字コードを選択します(多くはUTF-8です)。BOMの部分にはチェックはいりません(BOM無し)。
今度はミニバードの管理画面にログインして、左メニューにある「データベース設定」から『phpmyadmin』へ進みログイン。
メニューからインポートに進みます。
「テキストファイルの位置」のファイル選択には、上の作業で変換したSQLファイルを選択して実行するをクリックします。
2つ上の作業『移転元のMySQLデータをエクスポート(ダウンロード)する』の下に書いてあるgzip形式を使うか、必要なテーブルに絞ってダウンロード、または『さくらインターネットのレンタルサーバでデータベースのデータがphpMyAdminからインポートできないときの対処方法』にあるSSH接続を試してみて下さい。
一番最初の作業で、ファイルをダウンロードしましたが、そのルートフォルダにある『wp-config.php』というファイルをテキストエディタで開き、下記の部分を新しいサーバーの情報に書き換えます。
- WordPress のデータベース名
- 24行目付近「define(‘DB_NAME’, ‘※ここ’);」
- MySQL のユーザー名
- 27行目付近「define(‘DB_USER’, ‘※ここ’);」
- MySQL のパスワード
- 30行目付近「define(‘DB_PASSWORD’, ‘※ここ’);」
- MySQL のホスト名
- 33行目付近「define(‘DB_HOST’, ‘※ここ’);」
- WordPress データベーステーブルの接頭辞(該当部分を変更した場合のみ変更する)
- 64行目付近「$table_prefix = ‘wp_※ここ、通常は変更の必要はありません’;」
以上を書き換えたら保存し、新しいサーバーにアップロードします。
もし真っ白な画面になっている場合はhttp://あなたのドメイン.com/wp-adminにアクセスしID・PASS入力してログインします。
左メニューの「外観」にある「テーマ」から、ワードプレスデフォルトのテーマを選択してみてください。
最初の作業でダウンロードしたファイルから、移動に必要なファイルを新しいサーバーにアップロードします。
これは新規ワードプレスインストールの状態から、運営している中で追加された画像やフォルダ・ファイルなどの事です。
- プラグイン(wp-content/pluginsの中身)
- テーマ(wp-content/themesの中身)
- 画像(wp-content/uploadsの中身)
主なものはこの3つですが、運営方法やプラグインによっては別なフォルダやファイルがあると思われます。
わからない場合は、保存したファイルを全選択し、新しいサーバーへドラッグして下さい。
画像のように同名のファイル以外をアップロードする事ができます。
アップロードが完了したら、新しいブログにアクセスして、表示が変わってしまった部分(ウィジェットなど)を旧ブログを参考に調整します。
URLを入力して取得するブログパーツなどは、再度新しいURLでとり直します。
このブログで使っているパーツはこれです。
これらをリンク先から再度取得します。
アクセス元ランキングを表示してくれるACR WEBも使っていますが、こちらは管理画面から登録URLを修正できます。
なお今まで旧ドメインで獲得していたつぶやきやブックマーク数は、新しく取得したブログパーツへは引き継げませんので、残念ながら0からのスタートになります。
ミニバードのサーバーは、ドメインの設定をすると自動でwwwありのURL、なしのURLのどちらでもアクセスできる仕様になっています。
このままだと検索エンジンからは「同じ内容のサイトが2つある」と認識され、どちらかがコピーサイトと判断されてしまったり、または両方のURLとも検索結果に表示されなくなってしまう場合があります。
そのような状態を避けるためには、「https://topick.jp/」か「https://www.topick.jp/」のどちらかに統一する必要があります。
その方法ですが「.htaccess」というファイルを使って、運営したいURLでない方にアクセスがあった時に正常なURLへ転送します。
テキストエディタを開き、下記のようにそれぞれの条件にあわせてに記述します。
なお最後の行には必ず改行を入れてください。
記述したらそれを『.htaccess』というファイル名で保存します。
それを、新しいサーバーの(ワードプレスのある)ルートフォルダにアップロードします。
Redirect permanent / https://www.topick.jp/
または
RewriteEngine on RewriteCond %{HTTP_HOST} ^(topick\.jp)(:80)? RewriteRule ^(.*) https://www.topick.jp/$1 [R=301,L]
Redirect permanent / https://topick.jp/
または
RewriteEngine on RewriteCond %{HTTP_HOST} ^(www\.topick\.jp)(:80)? RewriteRule ^(.*) https://topick.jp/$1 [R=301,L]
※上記いずれも最後の行は必ず改行してください
今回はwwwなしのURLにしたいので、後者の記述を.htaccessに追記しました。
これは301転送といい、ドメイン変更やファイル名を変えたときなど一般的に使われる方法で、グーグルなど多くの検索エンジンも推奨する方法です。なお、一時的な移転の場合は302転送を使います。
ドメインのwwwですが、あってもなくてもどちらでも構いません。なくてはいけないなどのルールもないですし、あってもなくても検索エンジン最適化・SEOに影響することもありません(両方のURLでアクセスできてしまう状態が一番マズイです)。
古いドメインにアクセスがあった場合に新しいドメインに自動転送する方法です。
上の作業と同じく.htaccessを使います。
Redirect permanent / https://topick.jp/
または
Options +FollowSymLinks RewriteEngine on RewriteRule (.*) https://topick.jp/$1 [R=301,L]
※上記いずれも最後の行は必ず改行してください
これを古いドメインのサーバーにアップロードします。
この転送はルートドメイン以下にも適応されるので、例えば「http://以前のドメイン.com/test/」にアクセスがあった場合、「http://新しいドメイン.com/test/」のように下層のページも対象になります。
相互リンクやSNSなどにリンクされている場合は変更のお願いをします。
上の作業で行った301転送は記事のパーマリンク設定を変えない限り、個々の古いURLの記事を新しいURLへ転送してくれるので運営上は特に問題はありませんが、SEOを考えると直接新しいURLへリンクを貰った方が好ましいです。
移転作業としては以上となりますが、あとは外観やサイト内のリンクが間違っていないか、画像がちゃんと表示されているかなどの最終チェックを行います。
モバイル用にQRコードを表示しているサイトも多くあると思いますが、新しいURL用に作り直したものに貼り変えましょう。
以上となります、お疲れ様でした!
参考になります。
これから作業するので、じっくり活用させていただきます!
引越方法で途方にくれていた所、この方法で成功しました!!
ありがとうございますm(__)m
はじめまして。
こちらの方法を参考にしながら移行作業をさせて頂き、うまくいきました。
また、私の移行作業メモをblogにまとめた際に、このページへのリンクも掲載させて頂きました。
大変有難う御座いました。
>>みゆさん
レス遅れてしまいすみません。
ブログ拝見させていただきました、とても素敵なデザインですね!
>> ohnoさん
お力になれたみたいで大変嬉しいです!
>> UGさん
お役に立てて嬉しいです、リンクありがとうございました!