サイトメンテナンスによるダウンタイム(非表示時間)を極力発生させずにWordPressサイトをリニューアルする方法をご紹介します。
目次
WordPressサイトリニューアルの流れ
通常のサイトリニューアルでは、メンテナンスを実施し、その間にサーバー上のファイルを差し替えるため、ウェブサイトが一時的に閲覧できなくなります。
しかし、以下の手順を踏むことで、ウェブサイトが閲覧できない時間をほぼゼロに抑え、スムーズにリニューアルを完了できます。
既存のWordPressサイトをサブディレクトへ移動する
事前準備として、公開サーバー(public_html
など)にサブディレクトリ(例: wp_existing
)を作成し、既存のWordPressサイトをそこへ移動させます。その上で、このサブディレクトリをルートURL(例: https://example.com/
)で運用する状態に設定します。
WordPressサイトのサブディレクト運用については次の記事でご紹介しています。
新しいWordPressサイトを別のサブディレクトへアップロードする
公開サーバーにサブディレクトリ(例: wp_new
)などを作成して、そこへ新しいWordPressサイトをアップロードします。
この時点で、既存のWordPressサイトと合わせて、公開サーバーのディレクトリ構成が次のようになります。
/public_html
├── .htaccess
├── wp_existing(既存のWordPressサイト)
└── wp_new(新しいWordPressサイト)
アクセス元IPアドレスにより表示サイトを切り替える
ウェブサイトの切り替えに備え、まずは関係者のみが新しいWordPressサイトを確認できるように設定します。
以下は、.htaccess
ファイルを利用して特定のアクセス元IPアドレス(例: 111.222.333.444
)の場合に新しいWordPressサイトを表示し、それ以外の場合は既存のWordPressサイトを表示するための設定例です。
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REMOTE_ADDR} ^111\.222\.333\.444$
RewriteCond %{REQUEST_URI} !^/wp_new/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /wp_new/$1 [L]
RewriteCond %{REQUEST_URI} !^/wp_existing/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /wp_existing/$1 [L]
RewriteCond %{REMOTE_ADDR} ^111\.222\.333\.444$
RewriteRule ^(/)?$ wp_new/index.php [L]
RewriteRule ^(/)?$ wp_existing/index.php [L]
</IfModule>
これにより、関係者は新しいWordPressサイトを見ながらデバッグでき、一般の訪問者は引き続き既存のWordPressサイトを閲覧できます。
新しいWordPressサイトの最終デバックを行う
.htaccess
を設定して公開URLにアクセスすると、自分だけ新しいWordPressサイトが表示されるようになります。
この期間に、レイアウトの表示崩れ、フォームの動作確認、アクセス制限の確認など、本番環境での最終的な動作チェック(デバッグ)を訪問者に影響を与えることなく実施します。
すべての人が新しいWordPressサイトを見れるよう設定を切り替える
最終デバッグが完了し、新しいWordPressサイトの公開準備が整ったら、それをインストールしているサブディレクトリ(wp_new
)をルートURL運用で公開するように設定を切り替えます。
この設定の切り替え作業のみが、実質的なリニューアルのダウンタイムとなりますが、作業自体は非常に短時間で完了します。
WordPressサイトのサブディレクト運用については同じく次の記事でご紹介しています。
既存のWordPressサイトを整理する
切り替えが完了したら、既存のWordPressサイトが入っているサブディレクトリ(wp_existing
)は不要になります。
- 削除してサーバーリソースを空ける
- アクセス制限を設けた上でバックアップとして残す
など、運用方針に応じて整理してください。
まとめ
本記事では、サイトメンテナンスによるダウンタイム(非表示時間)を極力発生させずにWordPressサイトをリニューアルする確実な方法をご紹介しました。
この手順により、サイトの非表示時間を最小限に抑え、事業活動を止めることなくスムーズにウェブサイトを新しいものへと切り替えることができます。
弊社では、このようなダウンタイムに配慮したウェブサイトの制作や保守も承っております。ぜひお気軽にご相談ください。