運営していたサイトのドメイン変更に初めて挑戦しました。
「結局、ドメイン変更ってどの方法が正しいのか分からないよー。」
「簡単にかつ、後の手間(手作業による調整)がかからない方法が知りたい。」
こんな悩みに答えます。
私も参考サイトを頼りにドメイン変更作業に取り掛かろうと思ったのですがサイトごとで内容が違う部分があったりで、結局、どの方法が正しいのか試行錯誤しました。その結果、一番簡単にかつ後の手間(手作業による調整)がかからない方法をまとめてみました。
私と同じようにドメイン変更でつまづいている方の参考になればと思い、備忘録も兼ねて記事にします。
参考サイト
https://site-hikkoshi.com/1006/#STEP1
https://karaage.info/17900/
https://ysklog.net/wordpress/769.html
https://briarpatch.co.jp/wp-domainchange
そもそもドメインの変更はドメインの書き換えではない
ドメインを変更すると言ってもただ単にURLを書き換えるだけではありません。新しいドメインを取得し、変更前の旧ドメインからデーターを移動させ公開するという流れが一般的なようです。この方法が王道だと私は初め気づきませんでした(^▽^;)初心者なもんで。
そして、旧ドメインにアクセスがあった場合に新ドメインへ自動でリダイレクトさせるよう設定するという流れです。リダイレクトさせる事で今までの旧ドメインの評価を引き継ぐことができるので、新ドメインだとしても一からの再出発ではなくなるという訳です。(外部リンクを取得している場合にSEO効果を引き継ぐために有効です)
と、簡単な流れはこんな感じで、
ここからは具体的な作業環境と方法を紹介していきます。手順通りに進めてみて下さい。
作業環境と条件
- 変更後のドメインを使用するサーバーも「XSERVER(エックスサーバー)」で変更なし(サーバーの移行はなし)
- wordpressで作成したサイト間での場合
目次
- 1 ① 新規ドメインを取得する
- 2 ② 新規ドメインにwordpressをインストール
- 3 ③ wordpress設定画面でhttpsアドレスへ書き換える
- 4 ④ サーバーへアクセスしSSL化のリダイレクト設定をする
- 5 ⑤ 旧ドメインのデーターをバックアップ
- 6 ⑥ 旧ドメインのデータベースを移行する
- 7 ⑦ 新ドメインのwordpressに旧ドメインのファイルデーターを移行する
- 8 ⑧「Search Replace DB」ソフトでURLを一括置換しよう!
- 9 ⑨ 新ドメインのwordpress管理画面へ入れるか確認
- 10 ⑩ 旧ドメインの管理画面でURLを変更
- 11 ⑪ 301リダイレクトの設定
- 12 ⑫ メールアドレスの変更
- 13 ⑬ サイトマップ送信でGoogleに早く認識してもらう
- 14 ⑭ Googleアナリティクスの設定内容変更
- 15 ⑮ Google Search Consoleの再設定
- 16 ⑯ Google AdSenseへ新ドメインを追加
- 17 ⑰ ASPの登録URLを変更
- 18 まとめ
① 新規ドメインを取得する
まずは、変更したいドメイン(URL)を新しく取得します。
私は「お名前.com」から新たに作成しました。もしもアフィリエイトへ登録していれば「キャッシュバック」ページから自己アフィリできるのでお得に利用できました。
エックスサーバーにドメインを追加
お名前.comで取得したドメインをエックスサーバーに追加設定します。
エックスサーバーのネームサーバーを確認
お名前.comで取得したドメインのネームサーバー設定が必要なため、エックスサーバーのネームサーバーを確認します。
「サーバーパネル」を開いて「サーバー情報」内で確認できます。
ネームサーバー1~5です。
ネームサーバー設定
お名前.comで取得したドメインをエックスサーバーで利用する場合は、ドメインとサーバーを紐づけるために、新規ドメイン取得後にネームサーバ設定変更が必要です。
ドメイン取得後の初期設定のままではドメインが使用できないので、お名前.comで設定変更します。
エックスサーバーでSSL化設定をする
エックスサーバーで新ドメインのSSL化設定を忘れずにしておきます。
② 新規ドメインにwordpressをインストール
SSL化は反映されるまでに1時間程かかります。待っている間に新ドメインに「wordpressを簡単インストール」します。
wordpress管理画面へのログイン名・パスワードは旧ドメインのものと同じでOKです。(旧ドメインと別のログイン名とパスワードものを設定したとしても後にデーター移行させると結局は旧ドメインのログイン名とパスワードでログインすることになります。)また、他のログイン名・パスワードに変更したくなっても後からいくらでも行えます。
wordpressインストール時にデータベースが作成されます。
この時に表示されたデータベースの「データベース名・ユーザー名・パスワード」は忘れずメモしておくようにします。後述する手順で必要になります。もし失くしたとしてもこちらの記事の方法で確認することができます。
③ wordpress設定画面でhttpsアドレスへ書き換える
新ドメインへwordpressインストール後は、管理画面へログインし新ドメインのアドレスを変更します。
「設定」→「一般」のページを開いて、
WordPressアドレス(URL)とサイトアドレス(URL)の2箇所に
「s」を付けて「http」を「https」に変更。
書き換えた後はページ下の方にある「変更を保存」のクリックを忘れずに!
④ サーバーへアクセスしSSL化のリダイレクト設定をする
エックスサーバーのSSL化が反映されれば、httpとhttpsの2つのサイトがある状態になります。
「http」のURLにアクセスした人が「https」のサイトへリダイレクトできるように「.htaccess」内へコードを追記します。コピペでOK。手順通りにすれば簡単です。
「.htaccess」内へコードを追記
サーバーパネルへログインし、「.htaccess編集」をクリック。
ドメイン選択画面が表示されるので、旧ドメインを選択します。
上部の「.htaccess編集」を選択し、
下記↓のコードをコピーして貼り付けます。
RewriteEngine on
RewriteCond %{HTTPS} !=on [NC]
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
「確認画面へ進む」をクリック。
これで、リダイレクトの設定は完了です!
⑤ 旧ドメインのデーターをバックアップ
旧ドメインの管理画面へログインし、万が一の時のために必ずバックアップをとります。
私は「UpdraftPlus」というプラグインを使っています。
他のプラグインBackWPupってやつを使う方法もあるけれど、サイト知識が無い&エックスサーバー使用してる民には「UpdraftPlus」の方がおすすめです。私は毎日これで自動バックアップ取って常に3日分をDropboxに保存するようにしてますが今まで不具合無く使えてます(*^-^)
ってことで、まだバックアップ取ったことがないなら「UpdraftPlus」をインストールして有効化!
既に利用しているなら今日のバックアップがとれているか確認です。
(設定→UpdraftPlus→バックアップ済み、で確認)
⑥ 旧ドメインのデータベースを移行する
「そもそも、データベースって何?」
要はwordpress管理画面の設定内容・投稿記事・リンクデーター等が入った超大事なデーターです。私も詳しくは分かっていません(^▽^;)
データベースにアクセスするには、エックスサーバーのphpmyadminへログインします。
旧ドメインのベータベースへログイン
- まずは、エックスサーバーのサーバーパネルにログイン
- 次に、phpmyadmin(MySQL○.○)をクリックしデータベースへログイン
ログインするための「ユーザー名」と「パスワード」が分からないというかたはこちらの方法で確認できます。
旧ドメインのSQLファイルをエクスポートする
- データーベース名をクリック
- 「エクスポート」シートをクリック
- エクスポート方法を「詳細」に設定
- 「出力をファイルに保存する」にチェック
- 「DROP TABLE /VIEW/PROCEDURE/FUNCTION/EVENT/TRIGGERコマンドを追加する」にチェック
- 「挿入前にテーブルを空にする」にチェック
- 「実行」をクリックするとSQLファイル「****.sql」がダウンロード(エクスポート)されます。
これでエクスポートは完了です。
ちなみに、
「挿入の前にテーブルを空にする」のチェックを入れた理由はエラー「1062 – Duplicate entry ‘1’ for key ‘PRIMARY’」を出さないためです。
「DROP TABLE /VIEW/PROCEDURE/FUNCTION/EVENT/TRIGGERコマンドを追加する」にチェックを入れた理由はエラー「#1068 – Multiple primary key defined」を出さないためです。
エクスポートしたデーター内のURLは旧ドメインのままですが、まずは次の手順で新ドメインのデータベースへそのままインポートします。
新ドメインのデータベースへログインします。
旧データベースへログイン状態なら、一度ログアウトする必要があります。(緑のアイコンのExitをクリックするとログアウトできます)
エラーが出てログインできない場合はエックスサーバーのサバーパネル画面まで戻ってログインし直してみてください。
ログインするための「ユーザー名」と「パスワード」が分からないというかたはこちらの方法で確認できます。
SQLファイルを新ドメインのデータベースへインポートする
- 新ドメインのデーターベース名をクリック
- 上部の「インポート」シートをクリック
- 「ファイルを選択」で先ほどエクスポートしたSQLファイルを指定し
- 実行をクリック
「インポートは正常に終了しました」と表示されればOKです。
ここまでの手順でデータベースの移行が終りました。
⑦ 新ドメインのwordpressに旧ドメインのファイルデーターを移行する
FTPソフトで旧ドメインのファイルデーターをダウンロード
ファイルデーターをダウンロードするには、FTPソフトをパソコンへインストールしておく必要があります。私が使っているソフトは「FFFTP」です。もしまだインストールしていない場合はこちらの記事を参考にして設定してください。
今さら聞けない!FFFTPの使い方
https://techacademy.jp/magazine/1670
- FTPソフトで「ドメイン名」→「public_html」フォルダを開く
- FTPソフトで旧ドメインの「public_html」フォルダ内の[.htaccess]以外のデーターを全てローカル上(パソコン上)へダウンロードします(私は1時間半程かかりました)
このとき[.htaccess]のデーターは絶対に移行させないこと!!! 「.htaccess」には、サーバーのディレクトリごとの設定情報が記録されています。
「wp-config.php」を修正する
旧ドメインからダウンロードしたファイルデーターをアップロードする前に「wp-config.php」を開いて一部を書き換える必要があります。
先ほどダウンロードしたファイルから「wp-config.php」を探してテキストエディタ(TeraPad)等で開きます。旧ドメインの内容になっている「データベース名・ユーザー名・パスワード」を新ドメインのものに書き換えます。
書き換えた後は上書き保存を忘れずに。
FTPソフトで新ドメイン内へ旧ドメインへファイルデーターをアップロード
- FTPソフトで新ドメインの「public_html」フォルダを開き
- ダウンロードしておいた旧ドメインのデーターをアップロードする
⑧「Search Replace DB」ソフトでURLを一括置換しよう!
旧ドメインのデーターを新ドメインで使用するには新ドメイン(URL)への書き換えが必要です。
そこで「Search Replace DB」というソフトを使用するとURLを簡単に一括置換することができます。
「Search Replace DB」ソフトをダウンロード
まずはソフトのダウンロードをしましょう。
ダウンロードするには、Database Search and Replace Script in PHPにアクセスします。
英語ページですけど下記の入力だけでOK。チェックボックス、名前、メールアドレスを入力して「SUBMIT」をクリック
すると入力したメールアドレス宛にメッセージが届きます。「here」をクリックすると「Search Replace DB」の圧縮ファイルがダウンロードされます。
圧縮フォルダがダウンロードされるので解凍します。
(最新Ver 4.0です)
解凍した「Search-Replace-DB-4.1.1」フォルダを使用します。
「Search-Replace-DB-4.1.1」フォルダを導入
新ドメインの「Public_html」内へ「Search-Replace-DB-4.1.1」フォルダをFTPソフトでアップロードします。
ブラウザで「Search And Replace」に接続する
このソフトはブラウザで接続して起動させることができます。
- あなたの新ドメインの後ろに/Search-Replace-DB-4.1.1 (ダウンロードしたフォルダ名)をつけてアクセスします。
私の場合はhttps://〇〇〇〇〇.blogなのでこうなります↓https://〇〇〇〇〇.blog/Search-Replace-DB-4.1.1 - 旧ドメインのURLを「replace」に入力
- 新ドメインのURLを「with」に入力
- 試しに「Do a safe test run」をクリックすると置換後にこう変わるよ!っていう状態を確認することができます
※私はなぜかデーターベース情報が自動で読み込まれなかったので手動で入力しました。
「Do a safe test run」をクリックするとページ下にずらーっと置換後の項目が表示されます。
そして、「view changes」をクリックするとどう変更されるか確認することができます。
「Search and Replace」をクリックして置換完了です!
これでURLの一括置換は完了です。けれど最後にあとひと手間だけやるべきことがあります!
置換ソフトを削除
置換完了後はソフトを削除する必要があります。
「Search-Replace-DB-4.1.1」ソフトを新ドメインの「Public_html」内へアップロードしたままではセキュリティ上とても危険です。
「delete me」からアップロードしたフォルダを削除することができます。
FTPソフト内の置換ソフトが削除されているか確認します。もし「delete me」をクリックしても削除されていない場合は「Search-Replace-DB-4.1.1」フォルダの削除を必ずして下さい。
ここまでで、旧ドメインから新ドメインへのデーターの移行とURL置換が終わりました。
⑨ 新ドメインのwordpress管理画面へ入れるか確認
今までは新ドメインのwordpress管理画面のURLにアクセスしたとしても、旧ドメインのwordpress管理画面のURLに飛ばされてしまっていたはずです。
無事に新ドメインのwordpress管理画面へ正常に入れるか確認してください。
余談
私の場合、新ドメインにwordpressをインストールする時に新たにログイン名・パスワードを作成していたため、そのIDではログインできませんでした。( iдi ) 旧ドメインのユーザー名とパスワードでログインできました。
⑩ 旧ドメインの管理画面でURLを変更
旧ドメインのWordPressダッシュボードへログインし、一般設定の「WordPressアドレス(URL)」と「サイトアドレス(URL)」をそれぞれ新ドメインへ変更します。
ちなみに、この作業をなぜするのかは私は理解できていません。(^▽^;)というのも、ドメイン変更の手順としていろんな参考サイトを見ているとこの作業を載せていない記事もみかけたり・・・ ただ、使用しているエックスサーバーのQ&Aや、手順を解説してくれているいくつかのブロガーさんの記事にあった項目です。 ということで、私はいちおう新ドメインURLへ変更しておきました。
ちなみに、この作業を行うと旧ドメインのwordpress管理画面へはログインできなくなります。
【補足】 なお、このアドレス変更でデータベースのどこが変わるのか?についてですが、「wp_options」の「siteurl」が変わります。 そのため、万が一設定ミス等があれば、phpMyAdminから「wp_options」の「siteurl」を元に戻せば良いです。
https://ysklog.net/wordpress/769.html より
⑪ 301リダイレクトの設定
- 旧ドメインの評価を引き継ぐため
- 旧ドメインへのアクセスを新ドメインへ流すために
ドメインの変更には301リダイレクトの設定が必要不可欠です。(旧サイトの評価を引き継ぎたくない場合を除く)
全てのページにリダイレクトを設定する方法です。エックスサーバーなら簡単に設定できます。 旧ドメインを登録しているサーバーパネルへログインします。 「サイト転送設定」をクリック。
ドメイン選択画面が表示されるので、旧ドメインを選択します。 「リダイレクト設定追加」を選択し、設定対称ドメインを確認。 リダイレクト先に新ドメインを入力し「http://〇〇〇〇〇〇」 「確認画面へ進む」をクリック。 ちなみに、URLはhttpでOK。httpsのSSL化後のURLでなくても問題ありません。SSL化設定で「.htaccess」内に「http://」アドレスへアクセスがあった場合に「https://」アドレスへリダイレクトされるよう設定しているからです。
「リダイレクト設定一覧」を選択し「リダイレクト先」に新ドメインが反映されていることを確認できれば設定完了です。 これで、旧ドメインへアクセスしてみると新ドメインへリダイレクトされます。
ただ、私は301リダイレクトがちゃんと機能せず「エラー 500」がでてしまいました(;д;)
リダイレクトの解除タイミングはいつ?
検索エンジンがサイトを認識するまでの、約半年から1年間はリダイレクト設定の解除はしない方が無難です。
また、他サイトでの外部リンクで旧サイトが表示されてしまうことがあるからなのだそうです。私もアクセスの状況を見ながら1年くらいは旧ドメインも残しておこうと思います。
⑫ メールアドレスの変更
独自ドメインにてメールアドレスを使用している場合、新ドメインでメールアドレスを発行し、メールソフトの設定も変更します。
------------------------------------
ここまでの手順を完了させれば、サイト自体の設定は完了です。
ただし、サイトを運営していくためにもGooleやASP関連の広告設定も見直す必要があります。その設定方法も確認していきます。
⑬ サイトマップ送信でGoogleに早く認識してもらう
リダイレクト設定が完了したら、ドメイン変更前と変更後のサイトマップをGoogleに送信します。これによって、URLの移転を速やかにGoogle側に認識してもらうことができます。 私はプラグイン「XML-Sitemap」を使用しています。(バズ部の推奨通りに設定しています)
旧ドメインのサイトマップを送信
Googleサーチコンソールのサイトマップの項目を開き、
旧ドメインの「https://○○○○/sitemap.xml」を新しいサイトマップを追加に入力し「送信」をクリックします。
新ドメインのサイトマップを送信
旧ドメインのサイトマップ送信の手順と同じく、サーチコンソールのサイトマップの項目を開き、新ドメインの「https://○○○○/sitemap.xml」を新しいサイトマップを追加に入力し「送信」をクリックします。
⑭ Googleアナリティクスの設定内容変更
Googleアナリティクスは、旧ドメインの管理画面から登録URLを変更することで簡単に変更可能です。
プロパティ設定を変更
左メニューの「管理」をクリック。
「プロパティ設定」をクリックし、新ドメインのプロパティ名(サイト名)とURLを書き換え「保存」します。
ビュー設定を変更
「ビューの設定」をクリックし、新ドメインのビュー名(サイト名)とURLを書き換え「保存」します。
⑮ Google Search Consoleの再設定
次にGoogle Search Consoleの設定をします。アナリティクスは設定内容の書き換えをすればOKでしたが、サーチコンソールの場合は、新しい独自ドメインにて改めてサイト登録が必要です。固有のドメイン単位で計測が行われているためです。
エラーが起きた時の対処方法も詳しくはこちらの記事へ
⑯ Google AdSenseへ新ドメインを追加
Googleアドセンスは、2018年の末から新規サイト(ドメイン)は「サイトの追加」をサイト毎に審査が必要になったようです。
なので「サイトの追加」設定を行います。
「サイト」画面で「サイトを追加」をクリック。
新ドメインを入力すると下記の「AdSenseコード」が表示されます。
AdSenseコードをコピーして、新ドメインのwordpress管理画面へログインし、HTML(<head> タグと </head> タグの間)に貼り付けます。
コードの貼り付けが終ったら「送信」をクリック。
審査は数日から長くて2週間程かかるようです。
サイト一覧画面で審査状況が確認できます。気長に待ちましょう。
⑰ ASPの登録URLを変更
- Google AdSense
- A8.net
- もしもアフィリエイト
- バリューコマース
- リンクシェア・ジャパン
- Amazonアソシエイト(再審査要)
- afb(アフィリエイトB)(再審査要)
- アクセストレード(再審査要)
主なASP社を上げてみました。URL変更時に再審査が必要なものもあるので忘れずに変更申請しておきましょう。
まとめ
ドメインを変更してサイトを構築しなおすには結構な作業工程をこなす必要があります。でも、手順通りに行えば大丈夫かと思います。
この手順は参考サイトを見ながらですがあくまで私が上手くできた方法なので、思わぬところで躓く方がもしかしたらいるかもしれません。例えば「.htaccess」にいろんなコードをカスタイズで追記しているとか、様々だと思うので。
ただし、何度も言いますがこの作業を行う前には必ずバックアップをとっておいて下さい。私はwordpressやサーバーについては初心者なのでコード変換による影響について想定の範囲外です。なので自己責任でお願いします。ご了いただければと思います。
でも、やるべき作業は決まっているので、この記事が少しでも参考になれば幸いです。
もし、この記事を見て、ここはこうやった方がいいんじゃない?とかそういったご意見があればぜひご連絡下さい☆