Go to information

オリジナルエラーメッセージ

403 ErrorDocument, 404 Error Not Found, 500 Internal Server Error などの HTTPステータスのエラー発生時のメッセージを自作(オリジナル)のメッセージが書かれたファイルで表示するように設定する方法(ErrorDocumentディレクティブ)を紹介します。

ステータスコードとエラーメッセージ

ErrorDocument 403 http://w3g.jp/403
ErrorDocument 404 http://w3g.jp/404
ErrorDocument 500 http://w3g.jp/500

Internet Explorer での 404 Error Not Found の表示例検索エンジンやリンク集からリンク先へアクセスした際に、ファイルが移動されていたり、ドメイン変更などでウェブサイトが移転、または閉鎖されていたりなどでイメージのような(Internet Explorer の場合)メッセージが表示されるページに誘導されることがあります。このメッセージが表示された場合、せっかく訪問してくれたユーザーは、すぐに元の検索結果のページやリンク集のページに戻っていってあなたのウェブサイトから去っていってしまうことでしょう。

しかし、エラーメッセージを自作して、オリジナルのエラーメッセージを表示する方法を取ることで、エラーが表示される理由をうまくユーザーに伝えることができれば、別ルートへ案内してユーザーが探している情報へと誘導することができるかもしれません。

分散設定ファイルである .htaccess において自作のエラーメッセージの表示が有効なのは 4xx(クライアントエラー)系や 5xx(サーバエラー)系のステータスコード(403 ErrorDocument, 404 Error Not Found, 500 Internal Server Error など)のみです。設定方法は、.htaccess ファイルに ErrorDocumentディレクティブに続いてステータスコードを記述し、半角スペースを空けてオリジナルのエラーメッセージとして表示するファイルの URI やメッセージを指定します。表示したいファイルの URI は相対URI, 絶対URI のどちらの指定でも可能です。代表的なステータスコードには次の3つがあります。

403
アクセス権がない(ファイルのパーミッションや .htaccess 等の設定でアクセス制限がかかっている)場合に表示
404
要求したファイルが見つからなかった場合に表示
500
CGI の記述ミス、または .htaccess などのサーバー設定ファイルに記述ミスがある場合に表示

各ステータスコードの数字のリンク部分が当サイトにおける自作メッセージとなっています。こちらも参考にしてください。

まとめと ErroDocumentディレクティブ

ErroDocument ステータスコード [ URI | "メッセージ" ]

ErroDocumentディレクティブに続いて、最初の値に 403, 404, 500 などのステータスコードを記述します。そして、半角スペースを空けて、そのステータスコードに該当するエラーが起こった場合に表示する URI のファイル、またはメッセージを指定します。URI ではなく、直接、指定のメッセージを表示させる場合は、文字列にスペースを含むのであれば、ダブルクォーテーション(")で囲みます。日本語の指定も可能ですが、.htaccess を保存する際の文字コードに注意してください。 たとえば、当サイトが利用している xrea.com では、.htaccess ファイルを保存する文字コードが Shift_JIS 以外では文字化けするようです。また、ユーザーの環境によっても日本語は問題を起こすことが多いようなので、なるべく半角英数字だけを使ってエラー内容を案内できるように英語あたりを使っておくのが無難です。

現在位置
  1. W3G
  2. Others
  3. .htaccess
  4. オリジナルエラーメッセージ
ナビゲーション
ステータス情報
作者
上田 遼
公開
2006-05-06T21:21:21+09:00
更新
2008-12-29T04:19:16+09:00
URI
http://w3g.jp/others/htaccess/error_message
検索