【Apache設定】500 Internal Server ErrorのErrorDocument設定がうまく働いてくれません。


[httpd.conf]
ErrorDocument 401 /error/401.html
ErrorDocument 403 http://...
ErrorDocument 404 http://...
ErrorDocument 500 /error/500.html

と設定しており,401,403,404については思った通りカスタムエラードキュメントが表示されるのですが,500だけ,IE7ではIE標準のメッセージが,IE6ではXMLツリー(XHTMLで書いているため?)が,Firefox 2ではHTMLソースがプレーンテキストで表示されてしまいます。

※500エラーは,
- - - - -
#!/usr/bin/perl
print "a";
- - - - -
という内容のerr.cgiを使って発生させています。

IE6でXMLツリーが表示されてしまう点についてはソースをXHMLからHTML 4.01に変更して対処可能ということがわかりましたが,Firefoxでは無効で,試しにErrorDocument 500 http://....../error/500.html と変更すると,"The document has moved here"というようなページ(のソース)が同じくプレーンテキストで表示されて目も当てられません。

解決方法ありましたらご教示ください。

回答の条件
  • 1人2回まで
  • 登録:
  • 終了:2007/06/25 22:20:03
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答0件)

回答はまだありません

  • id:b-wind
    ErrorDocument の設定を外した状態で、
    http://..../error/500.html
    にアクセスするとどうなりますか?
    これでうまく行かないのなら、問題は ErrorDocument の設定ではなくファイル自体です。
  • id:heppokoA
    ありがとうございます。
    確認したところ,http://.../error/500.htmlは,問題なく表示させることができました。
  • id:heppokoA
    いま,ひょっとして・・・と思いhttpd.confのDefaultTypeをtext/plainからtext/htmlに変更したところ,IE7以外については問題が解消できました!

    IE7では,インターネットオプションの「HTTPエラーメッセージを簡易表示する」をOFFにすると空白のページが表示されます。

    引き続き,よろしくお願いします。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません