WordPressで使っているドメイン(アドレス)を別のドメインに変更したい、
サーバーを引っ越す際、ドメインも違うドメインにしたい
でも、難しいんでしょ?と思いますよね。
確かに以前はものすごく難しかったんですが、
UpdraftPlusというバックアッププラグインが登場してからは、
ものすごく楽ちん簡単完璧にドメインの引っ越しができるようになりました。
*この方法は、共有ドメインから独自ドメインに変更したい場合も可能です。
このドメインを変更する際の最大の問題点になるのは
リンクが全部旧アドレスになってしまう事
これに尽きます。
記事内のリンクや画像リンク、関連記事のリンクを一つ一つ新サイトのアドレスに変更してくのは、笑えないくらい大変です。
でも、これ、実はデータベースをいじる事で、一括変換が可能なんです!
というわけで、そのやり方も交えながら、
ドメイン引っ越し作業を解説していきます。
ポイント
ちなみに今回の解説では、サーバーの引っ越し解説も含みますが、
ドメイン変更だけしたくて、サーバーを引っ越す気はない場合でも、同じやり方になります。(同じサーバー内にコピーサイトを作って、そこに新しいドメインを紐付ける事で簡単に完了できます。)
ちなみにドメインそのままでサーバのお引越しの方法なら、
こちらの記事で書いてます。
→WordPressサーバ移行のやり方超解説(httpsドメインそのまま)アクセス不能対策も
WordPressのドメイン変更の手順
まず、大まかなドメイン変更の手順を書きます。
- 新ドメインのネームサーバの設定
- 新ドメインの登録
- 新ドメインにWordPressをインストール
- 旧ドメインをUpdraftPlusでバックアップ
- バックアップファイルのリンクを一括変更
- 新ドメインにUpdraftPlusで復元
- 新ドメインのSSL申請
- 新ドメインのhttpsを有効化
- 旧ドメインのリダイレクト設定
こういう流れになります。
1. 新ドメインのネームサーバの設定
まず、引越し先に使う新ドメインをサーバーで使えるように、ネームサーバの設定というのをやる必要があります。
これは、ドメインの管理会社(お名前.com、バリュードメイン、ムームードメインなど)のサイトのマイページでやります。
ここでは、ムームードメインを例に解説します。
マイページにログインし、「ネームサーバ設定変更」を選びます。
新ドメインのネームサーバ設定変更を選びます。
引越し先のサーバがリストにあるなら、それを選べば完了です。
例えば、ロリポップなら、ロリポップを選びます。
リストにない場合(Xサーバーなど)は、GMOペパボ以外のネームサーバを使用するを選び、
ネームサーバを入力します。
ネームサーバは、Googleで「〇〇サーバー ネームサーバ」と検索すれば、出てきます。
ちなみにXサーバーの場合は、こちらで確認出来ます(上の画像と同じ)。
ネームサーバの設定は、反映に1時間くらい通常かかります。
2. 新ドメインをサーバーに登録
まず、新ドメインをサーバーに登録します。
サーバーの管理画面から、ドメイン設定に行き、新ドメインを登録します。
例えば、Xサーバーの場合は、下の画像の奴です。
「無料独自SSLを利用する」をチェックしておきます(もしエラーになってもそれでOKです)。
「高速化Xアクセラレータ」は通常チェック入れてOKですが、キャッシュ系プラグインとの競合などが心配な場合は、今はチェックしないで、後でONにしても良いでしょう。
ロリポップなら、これ。
ここで、新ドメインを登録します。
3. 新ドメインにWordPressをインストール
次に今登録した新ドメインにWordPressをインストールします。
ちなみにデータベースは新しいデーターベースで作っちゃってOKです。
後でUpdraftPlusで上書きしますので。
WordPressのインストールのやり方の図入りの解説が欲しい場合は、
こちらの記事にありますので、参考にしてください。
4. 旧ドメインをUpdraftPlusでバックアップ
次に旧ドメインのWordPressにログインしてください。
UpdraftPlusプラグインを使って全部をバックアップします。
SiteGuardなどのログインセキュリティプラグインはOFFにしてからバックアップした方がトラブル少ないです。
まず、UpdraftPlusを入れてない場合は、インストール、有効化してください。
次に管理画面の上部に「UpdraftPlus」という表示があるので、
そこから設定を選びます。
UpdraftPlusの設定タブで、バックアップの保存先を指定します。
とりあえず一番分かりやすいGoogle Driveを選ぶとします。
選んだら、一回一番下までスクロールして「変更の保存」をクリックしてください。
変更の保存をしたら、同じ画面で、今度は、保存先の設定をします。
Google Driveなら、Googleで認証というリンクをクリックして、指示に従って、進めば、認証が完了して、Google Driveにバックアップできるようになります。
認証して、オレンジの画面で、「Complete set up」を押すだけです。
WordPressの画面に戻ったら、スクロールして、「バックアップするファイル」の4つの部分全部にチェックが入っている事を確認して、「変更の保存」をもう一度押せば完了です。
そしたら、実際にバックアップします。
Backup/ Restoreタブに行き「今すぐバックアップ」をクリックします。
この画面では、上の3つにチェックが入ってる事を確認して、「今すぐバックアップ」を押してください。
上の画像のように、「データベース」などと書かれた5つのファイルが出れば、バッチリです。
この「データベース」「プラグイン」「テーマ」「アップロードファイル」「その他」などのボタンを全部押してください。
ボタンを押すと、PCにダウンロードされます。(場合によっては、5つ以上ファイルがある場合もあります。その場合は全部保存してください。)
(Google DriveとパソコンをSyncしてる場合などは、Google Driveから直接ダウンロードももちろん可能です。)
*重要*
この今ダウンロードした圧縮ファイルを、全部コピーして、別のフォルダにも保存してください。これから上書きするので、上書きでミスした時用に、現時点でコピーをちゃんと取っておいてください。それが後で失敗した時に後悔しないために非常に重要です。
5. バックアップファイルの旧リンクを新リンクに一括変更
もう一度重要なので言います。
今ダウンロードした圧縮ファイル達、ちゃんとコピーして、
別のフォルダにも保存(ダブルバックアップ)しましたね?
OKです。
そしたら、今度は、今ダウンロードしたファイルのうち、1つだけgz形式のファイルがあるはずです。
このdb.gzという圧縮ファイルを解凍します。解凍するには、通常Lhaplusというソフトを使います。Lhaplusがうまく機能しない場合は、7zipというソフトでもOKです。
(32bitと64bit版がありますが、大体今のWindows10は64bitで動いてます。64bit版でうまく動かなかったら、32bit版をダウンロードしてインストールすればOK。ていうかどっちインストールしても動きます。)
次に旧リンクを一気に新リンクに置換します。
解凍したら、Notepad(メモ帳)で開くんですが、私の場合、データがでかすぎて、メモ帳だとフリーズしました。Terapadもフリーズして落ちたなぁ・・
というわけで、個人的にうまくいったのは、Notepad++というソフト。このソフトが一番おすすめです。(このソフトでもブログがデカイと一時的にはフリーズしますが、待ってればちゃんと動きます)
右クリックして、開くソフトを指定します。
「置換」を選んでください。
(下の画像はNotepad++。メモ帳だと「編集」→「置換」)
検索文字列に旧ドメイン
置換文字列に新ドメイン
を入力して、「すべて置換(一括置換)」を押します。
例えば、私の場合だったら、
旧ドメインが http://abc.ciao.jp/abc/ (サブディレクトリを使ってた)
新ドメインが http://abc.com/
という感じです。
*ちなみに新ドメインをhttp、https どちらで入力するかですが、
基本的にはhttpで書く事をおすすめします。
というのも、バックアップを復元した後に、SSL有効化をする事で、後でhttps化するので、復元時点ではhttpsではない場合が多いからです。
特にサーバー自体を引っ越す場合は、ネームサーバの変更が完了するまでは、httpですから、httpで入力で良いです。(httpsで書いてしまうと、下手するとアクセス不能になる)
旧サイトがhttpsで、サーバは引っ越さない、新ドメインのサーバのSSL設定も有効化も完了していて、バックアップの中にReally Simple SSLが入ってて、復元した瞬間にhttpsになると言うのであれば、httpsで新アドレスを入力しても良いですが、
どのパターンでhttpで入力しても、プラグインでhttpsになる時に、httpsに自動的に書き換わるのでここではhttpで入力する事をおすすめします。
ファイルをgzに戻す
置換が終わったら、そのまま上書き保存して、Notepadは閉じてしまってください。
そして、その上書き保存したdbファイルが入ってるフォルダ
これをまた、Lhaplusや7zipを使って、gzファイルに圧縮します。(つまり解凍前の状態に戻す)
フォルダを右クリックして、圧縮→gzを選んでください。
そして、さっきの5つのファイルの所に
この新圧縮gzファイルをドラッグして、古いgzファイルを上書きしてください。
これで、書き換えプロセスは完了です。
6. 新ドメインにUpdraftPlusで復元
では、今度は新ドメインのWordPressにログインします。
新ドメインにUpdraftPlusプラグインを「インストール→有効化」します。
UpdraftPlusの設定画面の「Backup/Restore」タブを下にスクロールすると、
バックアップファイルをアップロードというのがあるので、それをクリックして、
先ほどの5つ(もっとある場合は全部)をアップロードします。
そして、すぐ下に現れた「復元」ボタンをクリックします。
下のようなダイアログで出ますので、全部チェックして、「復元」を押します。
次のダイアログも「復元」を押します。
これで、次の画面で、スクロールして、最後にRestore Successful!と出れば、復元は完了です。
新WordPressの投稿画面など、
別のページに移動しようとするとログアウトして、この表示が出るはずです。
WordPressデーターベースを更新をクリックして、再ログインします。
注意1:もしサイドバーやウィジェットが復元されない場合の対処法
復元されたけど、サイドバーなどのウィジェット類が復元されずに消えてしまってる場合は、
例えば、Cocoonをお使いなら、Cocoon設定の中にバックアップって項目がありますから、
旧ブログのバックアップを新ブログに復元すると、そういった設定も復活します。
Cocoonじゃないテーマの場合も、そういったテーマ独自のバックアップ設定がないか探してみたり、
もし、もう一度再リストアを試みるのであれば、この画面で
まず、テーマだけを復元し、その後にデータベースなどの残りを復元すると、
テーマにちゃんとデータベースの内容(つまりウィジェットの設定)が反映されてうまくいったという事例もUpdraftPlus公式にありました。
注意2:ここで、WordPressにアクセス出来なくなった場合の対処法
もし、あなたのバックアップの中にReally Simple SSL プラグインを含んでいて復元した場合、新ドメインのSSL設定が完了していないと、きっと新WordPressにアクセス出来ない状態になります。
これは、新ドメインがSSL対応すればアクセスできるようになるので、
サーバー側のSSL化が完了するまで待つ(通常申請してから1時間前後)のが一番簡単です。
もし、どうしてもすぐにhttpでアクセスできるようにしたいのであれば、
Really Simple SSLプラグインをFTPから解除する必要があります。(削除しても無駄です)
解除方法については、こちらの記事のStep6で書いています。
また、SiteGuard WP Plugin などのログインセキュリティプラグインが原因でログインできなくなる場合もあります。SiteGuard WP Pluginの場合は、単純にFTPからプラグインフォルダをまるっと削除でログインできるようになります。
7. 新ドメインのSSL申請
ここで、httpsが使えるようにSSL申請をサーバーでします。
ネームサーバの設定が反映されてないと、SSL申請をしてもエラーになります。
エラーになった場合は時間を置いてまたやります。
例えば、Xサーバーなら「ドメイン」の「SSL設定」から新ドメインの「選択する」を選び、
「独自SSL設定追加」タブで、「追加する」を押して完了です。(CSR情報はチェックなしでOK)
ロリポップの場合も、「セキュリティ」→「独自SSL証明書導入」から「無料独自SSLを設定する」を選びます。
この後の手順は、公式に図入りの分かりやすい手順があるので、参考にしてください。
8. 新ドメインのSSL(HTTPS)をWordPressで有効化
もし、旧ドメインのWordPressがすでにhttpsの場合は、バックアップにReally Simple SSLなどのhttps化プラグインが入っていたと思いますので、この手順は省略しても、すでにhttpsになってると思います。
新ドメインのWordPressにアクセスして、httpの場合は、ここでhttpsにする必要がありますので、「Really Simple SSL」というプラグインをインストールして、有効化します。
有効化するだけで、なんの設定もいりません。勝手に全部httpsのアドレスに置き換わります。
これで、晴れて新ドメインでWordPressブログが表示されるようになってるはずです。
最後に今度は、旧ドメインを新ドメインにリダイレクト設定します。
9. 旧ドメインを新ドメインにリダイレクト設定する
旧ドメインにアクセスしても、即、新ドメインにリダイレクトされるように設定します。
旧ドメインがあるサーバーのFTPにCoreFTPなどのソフトか、
サーバーのマイページのFTPからログインして、
旧ドメインのWordPressフォルダ内に.htaccessがないか探してください。
あれば、PCにダウンロードしてください。
無いなら無いで大丈夫です。新しいのをメモ帳で作ります。
メモ帳(notepad)で .htaccessを開いてください。
#redirect
RewriteCond %{HTTP_HOST} ^(quiz\.ciao\.jp)(:80)? [NC]
RewriteRule ^(.*) https://quiz.nebikatsu.com/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^(quiz\.ciao\.jp)(:443)? [NC]
RewriteRule ^(.*) https://quiz.nebikatsu.com/$1 [R=301,L]
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
.htaccessがある場合、緑字以外の部分をコピーして、.htaccessの先頭に追記してください。
.htaccessがない場合は、メモ帳に緑字含めて全部コピーしてください。
ピンク、赤字部分ですが
ピンクには旧ドメイン quiz.ciao.jp なら、quiz\.ciao\.jpと記入します。
(フォントによっては、バックスラッシュが円マークになりますが、気にせず大丈夫です)
赤字には、新ドメイン https://〇〇.com/ を入力します。
そして、それを「.htaccess」という名前で(上書き)保存します。
WordPressの「wp-admin」などのフォルダが入っている第一階層の部分に
.htaccessを上書きアップロードします。
これで、旧ドメインにアクセスしてみて、ちゃんと新ドメインに飛ぶようになってれば、完了です。
実際の作業は、そんなに難しくなかったと思います。
これも全てUpdraftPlusやReally Simple SSLなどの超便利プラグインのおかげですね。
お疲れ様でした。
-追記- .htaccessに直接追記されてる情報は手動で追記が必要
もしあなたが、リダイレクト設定などを過去に直接手動で.htaccessに追記していたのであれば、
UpdraftPlusでは .htaccessに直接追記したものはバックアップ&リストアされないので、
新ドメインのWordPressには、反映されてない可能性が高いです。
なので、そういったものがある場合は、旧サイトの.htaccessの追記情報を新サイトの.htaccessに手動で追記する必要があります。
この際、間違えて別の.htaccessを上書きなどしてトラブらないように、
特に旧サイトの.htaccessは別途ダブルバックアップして、
PCの別の場所に保存しておく事を強くおすすめします。
-追記2- UpdraftPlusは、.htaccessはバックアップしてくれません。
今回紹介したUpdraftPlusは、自動バックアップ設定もできるので、バックアッププラグインとして新ブログにも入れておく事がおすすめなのですが、
唯一の難点は前項で話した通り、.htaccessやwp-configは自動バックアップされないので、
BackWPupという別のバックアッププラグインで、
.htaccessやwp-configだけ自動バックアップされるようにするのがおすすめです。
BackWPupの「ジョブ→ファイル」の画面。
「WordPress をインストールしたフォルダー」と「特殊ファイルを含める」にチェックが入ってるのを確認してバックアップしとくと、.htaccess類もバックアップされるのでUpdraftPlusで出来てない部分をカバーできます。
というわけで、お疲れ様でした。