ErrorDocumentでオリジナルエラーページ指定

カテゴリ:Apache 2.0の設定
日時:2004/10/23 09:30

「指定したページが見つからない」(404エラー)など、Webサーバが表示するエラーページをカスタマイズしてオリジナルページにする。これも/etc/apache2/conf/commonapache2.confで行う。

すべての17種類すべてのエラーページを用意するのは大変なので、よく使う(?)4種類のページだけオリジナルにした。commonapache2.confのデフォルト設定は、
#   ErrorDocument 401 /error/HTTP_UNAUTHORIZED.html.var
#   ErrorDocument 403 /error/HTTP_FORBIDDEN.html.var
#   ErrorDocument 404 /error/HTTP_NOT_FOUND.html.var
#   ErrorDocument 500 /error/HTTP_INTERNAL_SERVER_ERROR.html.var
になっている。 これらの「#」を外して有効化し、
   ErrorDocument 401 /401エラーファイル
   ErrorDocument 403 /403エラーファイル
   ErrorDocument 404 /404エラーファイル
   ErrorDocument 500 /500エラーファイル
とする。イタリックの部分は、実際のファイル名(ドキュメントルートからのパス付き)。ドキュメントルート内にerrorというディレクトリを用意し、401.htmlというファイルを作った場合は、
   ErrorDocument 401 /error/401.html
となる。

エラーページをドキュメントルート外に保存したい場合は、ErrorDocumentディレクティブの直前にある
#    Alias /error/ "/var/www/localhost/error/"
を有効化して、Aliasを適切に設定する必要がある。

ちなみに、用意した4種類のページは、

・401エラー(Authorization Required)
 ユーザー認証失敗時に表示

・403エラー(Forbidden)
 アクセス権がない場合に表示

・404エラー(Not Found)
 指定したページが存在しない場合に表示

・500エラー(Internal Server Error)
 サーバ内部のエラー時に表示(CGIがミスってるとか)