システム改修、アップデート時やサイト全体のデザインリニューアル、セキュリティなどの問題、またオーダーに対応できないためにでホームページを一時的に見れない状態にしたいということがあった場合、どのような対処法があるかをまとめました。
Googleでは閉鎖ではなく、機能を制限することを推奨している
まずホームページを完全に閉鎖するのではなく、復帰することが前提の場合です。Google検索セントラルには、Google検索結果への影響を最小限にするための方法が紹介されています。
- カート機能を無効にする
ECサイトなどの場合は、サイト全体を閉じるのではなく購入などのアクションができないようにカート機能を無効にします。 - バナーやポップアップで告知する
対応が遅れるなど通常通りの営業ではない旨をひと目でわかるようにします。 - 構造化データを更新する
サイトで構造化データ(Product
、Book
、Event
など )を使用している場合、営業時間や在庫状況を最新の状態に更新する
などの方法が紹介されています。
Google検索セントラルウェブサイトを一時停止または無効化する
それでもサイト全体を見れない状態にしたい場合
前述のような検索結果に悪影響が出ないような対策もありますが、それでも一時的にサイト全体を見れないようにしたい、閉鎖したいという状況もあるかもしれません。
そのような時の対象法として以下のような方法が考えられます。
- サーバー上のデータを削除する(おすすめ度:)
- Basic認証(アクセス制限)をかける(おすすめ度)
- 503ステータスコードを返す(おすすめ度)
サーバー上のデータを削除する
サーバー上にアップされているデータを削除してしまえば、ホームページが表示されてしまうことはなくなります。
ただしかなり乱暴な方法で、おすすめではありません。
サーバー上のデータを削除した場合、そのサイトへアクセスすると当該ページが見つからないことになるのでサーバーでは404エラーページを返すことになります。
アクセスしてきたユーザーには「ページが見つかりません」と表示されます。
またサイトを再開する時にはデータをアップし直す必要がありますが、静的ページであれば再アップロードは簡単ですがCMSなどの場合は時間と手間がかかります。
Basic認証(アクセス制限)をかける
サーバー上にデータを保持したまま、ホームページを閲覧を制限するにはウェブディレクトリにBasic認証を設定し、アクセス制限する方法があります。
Basic認証(アクセス制限)をかけると、以下のようにユーザー・パスワードの入力を求められます。
エックスサーバーでサイトにアクセス制限をかける方法
エックスサーバー の場合、サーバーパネルから簡単に設定できます。
サーバーパネルにログインすると左中央あたりに「アクセス制限」というメニューがあります。
アクセス制限をしたいディレクトリで「アクセス制限」を「ON」にします。
「現在のフォルダ」が、Web領域のpublic_htmlディレクトリになります。サイト全体にアクセス制限をかける場合はここをONにします。
続いてユーザー設定をすれば、特定のユーザーだけ閲覧可能になります。
ただし、ホームページ全体にアクセス制限をかけると、ユーザーに不審に思われる可能性があります。
ユーザーは通常、ウェブサイトへの制限についての事前通知や説明を受けることを期待しています。アクセス制限をかける際には、適切なメッセージやエラーページを表示し、ユーザーに理解を促すことが重要です。また、アクセス制限が一時的なものである場合は、復旧予定時期や代替手段を提供することも重要です。
最終的には、アクセス制限をかけることになる場合でも、ユーザーの理解と信頼を維持するために適切な配慮が必要です。
503ステータスコードを返す
503ステータスコードは、HTTPプロトコルで使用されるステータスコードの一つです。
サーバーがアクセスの集中や負荷の増加、サーバー障害などで503エラーページが表示されることがありますが、メンテナンス中にも503ステータスコードが使われます。
503ステータスコードによってユーザーにサービスが一時的に利用できない旨を伝えます。
- サイトがメンテナンス中または休止中というメッセージを記載したファイルを用意する(例:mainte.html)
- .htaccessファイルを設置する
.htaccessに以下のように記述します。
ErrorDocument 503 /mainte.html
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_URI} !=/mainte.html
RewriteRule ^.*$ - [R=503,L]
</IfModule>
503エラーを返すのは、2〜3日など短期間の閉鎖やメンテナンスに向いています。
それ以上の期間、サイトを閉鎖する場合、Googleでは以下の方法を推奨しています。
200
HTTP ステータス コードを使用し、ユーザーが検索で見つけることのできるプレースホルダとして、インデックス登録可能なホームページを提供します。
数週間など長期でサイトを閉鎖する場合の方法
サイトへのアクセスを特定のページ(info.html)へリダイレクトする場合の.htaccess。
RewriteEngine On
RewriteCond %{REQUEST_URI} !/info\.html$ [NC]
RewriteRule ^(.*)$ /info.html [R=302,L]
info.htmlには、サイトを閉鎖していることや連絡先などを記しておくと、サイトへ訪問してきた人にも親切です。
別ドメインに移転したり、別サービスとしてリニューアルする場合は、恒久的な移動を示す301リダイレクトを指定します。
新しいドメインに移転する時(301リダイレクト)する場合は以下のようになります。
RewriteEngine On
RewriteCond %{HTTP_HOST} ^old-domain\.com$ [NC]
RewriteRule ^(.*)$ https://new-domain.com/$1 [R=301,L]
2行目の「old-domain.com」には移転元のドメイン
3行目の「new-domain.com」には移転先のドメインを記述します。
まとめ
ホームページを一時的に閉鎖する方法についてまとめました。
検索エンジンの順位に極力影響を与えたくない場合は、Googleが推奨するようにサイトを閉じるのではなく「機能を制限する」という方法が良いでしょう。
それでもサイトを表示させたくない場合
- 短期間なら503ステータスコードを返す
- 長期間なら特定のページへリダイレクトする
という方法を検討すると良いでしょう。