このたび、当社のコーポレートWebサイトとペンギンのメディアサイトのドメインを.netから.co.jpに切り替えました。切り替えるにあたりコンテンツ構成はそのままにドメインだけを切り替える作業を実施しました。今回はその手順をご説明します。

今回は以下の条件で移行を行いました。
- Webページ(LP含む)やCMSデータは変更せず、ドメインのみを変更する。
- Webサイトのドメインのみを変更し、メールのドメインはそのままにする。
- 古いドメインでアクセスしたら新ドメインにリダイレクトして機会損失を軽減する。
- サービスを停止することなく、Webサイトの移行を完了させる。
ご興味がある方は、ぜひご覧ください。
1 新サーバーと新ドメインを準備する
移行するための新しいドメインとWebサーバーを用意します。Webサーバーでは新たにLAMP環境*の構築・設定を行い、CMS(WordPress等)をインストールできる準備をします。このときOSやミドルウェアはセキュリティやパフォーマンスに配慮し最新バージョンを準備するようにします。
*LAMP環境とは、Webサーバーのオープンソースソフトウェアの頭文字から取った総称で、OSのLinux、WebサーバーのApache、データベースのMySQL、プログラム言語のPerl、PHP、Pythonを指します。最近ではApacheではなくnginx(エンジンエックス)を利用することも多いです。
注意点としては、現在利用しているCMSやプラグインが最新のPHPやミドルウェアに対応しているかを予め確認しておきましょう。
WordPressの場合、PHPのバージョンによってプラグインが正常に動かなくなる可能性はありますので、よく確認しましょう。
Webサーバーが準備できたら、新ドメインで新Webサーバーにアクセスできるように、各ドメインサービス(お名前.comやAWS Route53等)でDNSを設定します。Aレコードには新サーバーのIPアドレスを指定します。
例
example.com A 192.168.0.1
www.example.com CNAME @
今回はWebデータの移行のみですので、MXレコードなどは変更しません。もしメールフォームなどでWebサーバーからメール送信する場合は、SPFレコードやDKIMも設定しておきましょう。
Gmailのガイドライン変更に伴いDMARC/SPF/DKIMを設定したい
2 コンテンツデータを移行する
現在運用しているWebサーバーのコンテンツデータ一式を新Webサーバーに移行します。方法としては現Webサーバーにログインして、tarコマンドでデータを一括でダウンロードして新Webサーバーでアップロードして展開するのが一般的です。
同様にWordPressのMySQLデータベースのデータもdump(エクスポート)し、ダウンロードしておきましょう。
注意点としては、ドメイン移行中はコンテンツの更新は行わないことです。ドメイン移行中はコンテンツの更新は行わないようスタッフに周知させることが重要です。もし移行中にコンテンツの更新が必要になった場合、新ドメインの方にも同じコンテンツを反映して内容の差分を極力無くすように心がけましょう。
コンテンツデータの書き換え
現状のコンテンツデータには、WebページのHTMLファイルの記述のリンク指定やOGP(Open Graph Protocol)やmeta要素の属性値に、旧ドメインの値の記述が入ってることがありますので、新ドメインになるように置換しておきましょう。
例:
<meta property="og:url" content="https://old.example.com/" />
<link rel="canonical" href="https://old.example.com/" />
<a href="https://old.example.com/about/">詳しくはこちら</a>
↓
<meta property="og:url" content="https://new.example.com/" />
<link rel="canonical" href="https://new.example.com/" />
<a href="https://new.example.com/about/">詳しくはこちら</a>
CMSのSQLデータも同様に、旧ドメインで指定されている記述を置換しましょう。特に画像の指定などがこれに該当します。
<img src="https://old.example.com/wp-content/uploads/hoge.jpg" alt="" width="600" height="400">
↓
<img src="https://new.example.com/wp-content/uploads/hoge.jpg" alt="" width="600" height="400">
特に、WordPressの場合は「wp_options」テーブルの「site url」と「home」のレコード値のドメイン指定を新ドメインにすることを忘れないように注意しましょう。(テーブル名の接頭語[wp_]は環境によって異なります)。
置換が済んだら、新WebサーバーのMySQLにdumpデータをインポートします。
【補足】WordPressの設定ファイル(wp-config.php)の編集
CMSがWordPressの場合、WordPressのディレクトリをそのまま移行すると参照するデータベースが古いサーバーのものとなりデータベース確立エラーとなってしまいます。wp-config.phpを編集して新しいサーバーのデータベースの値に書き換えます。
/** WordPress のためのデータベース名 */
define('DB_NAME', '新しいDB名');
/** MySQL データベースのユーザー名 */
define('DB_USER', '新しいMySQLのユーザー名');
/** MySQL データベースのパスワード */
define('DB_PASSWORD', '新しいMySQLのパスワード');
/** MySQL のホスト名 */
define('DB_HOST', '新しいDBサーバーを指定');
上記の設定が済んだら、新Webサーバーで正常にWordPressのログインや動作、Webページの巡回ができるかをブラウザで確認しましょう。あらゆるPCやスマートフォンで細かくチェックすることが大切です。
もしエラーが発生した場合は、エラーログを確認し原因箇所を特定して解決します。殆どの場合はWordPressのプラグインとPHPのバージョンによる不整合であることが多いため、プラグインのバージョンアップなどで対処します。
3 現ドメインから新ドメインへのリダイレクトする
新ドメインでのブラウザチェックが完了したら、いよいよリダイレクトの実施です。リダイレクトとは古いドメインでWebサイトにアクセスしても、新ドメインに自動で転送してコンテンツをそのまま表示させることです。これによりユーザーの機会損失軽減やSEO効果を狙う事ができます。方法としてはWebサーバーで301リダイレクトを実施します。

*301リダイレクト:サーバーサイドリダイレクトの方法で、検索エンジンの検索順位の評価を迅速に継承できるリダイレクト方法の1つでGoogleが推奨している手法です。永続的に転送を続けたい場合に利用されます。
リダイレクト(転送)方法
Apacheの場合はWebサイト直下のディレクトリで.htaccessファイルで行うことが一般的です。
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?旧ドメイン\.com$ [NC]
RewriteRule ^(.*)$ https://新ドメイン.com%{REQUEST_URI} [R=301,L]¥
nginxでは、/etc/nginx/nginx.confでリダイレクト処理を実施し、nginxをリロードして再起動します。
server {
listen 80;
server_name 旧ドメイン.com www.旧ドメイン.com;
return 301 https://新ドメイン.com$request_uri;
}
様々なブラウザやスマートフォンなどで、古いドメインでアクセスして新ドメインに転送されて正常に表示できることを確認します。また、GoogleやMicrosoft Bingで検索して古いドメインのサイトが新ドメインに転送されていることも確認します。
ドメイン変更に伴うSEOの影響について
リダイレクトすることでユーザー体験を損なうことなく新ドメインへ移行はできますが、場合によってはGoogleやbingなどの検索エンジンの評価が一時的に低下したり、結果に表示されなくなる可能性があります。外部リンクは100%評価が引き継がれる訳ではなく部分的に評価が失われることがあります。
主要な流入元のサイトにドメインの変更を対応いただくことも安定的な評価の引き継ぎとなりますので、評価や掲載順位の変動が発生するリスクを理解したうえで行いましょう。
4 URLの表記を変更する
Webサイトを新ドメインに切り替え正常に運用できていることを確認できたら、多くの人に周知させるためにURLの変更を行いましょう。具体的には以下を実施します。
- メールの署名のURL表記変更
- 名刺やチラシ、配布物のURL表記変更
- 各種サービス(Google AnalyticsやGoogle Search Consoleの設定)のURL変更
- SNSの紹介文のURL表記変更
- 取引先やお客様への告知
5 移行のポイント
最後の移行のポイントを5つあげておきます。
1.手順や順序をしっかりと決めて計画通り行うこと
2.移行期間中にコンテンツの差分が生じないよう、更新スケジュールを周知させること
3.スケジュールと移行実施日時を予め決め、スタッフに周知させること
4.301リダイレクトを実施し、検索評価やユーザー体験を損なわないよう対策すること
5.万が一トラブルが発生した場合でも、すぐに復帰できるよう旧環境を残しておくこと
以上で安全に移行を行うことができます。もしドメインやサーバー移行にお困りの方がいましたらkazeniwaクリエイティブチームまでお気軽にご相談ください。