ホームページのメンテナンス時にするべきこと

WordPressのカスタムフィールドの使い方がいまいちよく理解できていないYu-ichiです:neko:

ホームページをメンテナンスする際に、

「只今、ホームページのメンテナンス中です。:kaoemoji2:

的なメッセージを一時的に表示したことありますか?:kaomoji4:
おそらく、長年HP作成をしていると1度や2度はあるかと思います。:kaomoji1:

趣味のHPとかであれば、「index.html」などを直接編集して、メンテメッセージを表示しますが
商用のしかもSEOとか意識してやっているとそういうわけにはいきません。
「メンテナンス中です」というキーワードで上位に表示されたいのであれば別ですが・・・。:hamster_4:

そこで、HTTPステータスコードで「503」を返してあげると良いそうです。
【HTTPステータスコードの一覧】
HTTPステータスコード-Wikipedia

いろいろなステータスコードがありますね。:kaomoji8:
良く使う301や302、良く見かける(笑)403や404や500などなど。

というわけで、Web担当者Forumの記事を参考に設定をしてみましたが、
Apacheのバージョンが対応していないらしく、正常に動作しませんでした。:naku:

そこで、別のやり方を参考にしてやってみました。:kaoemoji5:

参考サイトのようにルート直下に「/maintenance」フォルダを作成し、
その中に「503.php」を作成して、検索エンジンに対して503ですよ~という記述を書きます。

<br />
&lt;?php<br />
header ('HTTP/1.0 503 Service Temporarily Unavailable');<br />
include(dirname(__FILE__) . '/index.html');<br />
?&gt;<br />

「index.html」は、人間向けにメンテナンスを知らせるためのページです。
これも「/maintenance」フォルダに一緒に入れておきます。
.htaccessには以下の記述を追加します。:kaoemoji3:

</p>
<p>&lt;IfModule mod_rewrite.c&gt;<br />
  RewriteEngine On<br />
  RewriteRule ^maintenance/ - [L]<br />
  RewriteRule ^.*$ maintenance/503.php<br />
&lt;/IfModule&gt;</p>
<p>

これでサイトに来たクローラーや人に対して、メンテ中ですよ~と教えることができます。
正しくステータスコードが返っているかはこちらのサイト(英語)で調べることができます。

本当はURLも変えた方がいいのかな??:hamster_4:
調べてみると、302転送して転送先で200を返すのはよろしくないようですが
302転送をして転送先で503を返すのはどうなのでしょう?:kaomoji4:

とりあえず今は上記の方法で対応しています。

他に良いやり方があれば、アドバイスください!:neko:

トラックバックURL

コメントを残す

メールアドレスが公開されることはありません。