- - PR -
ASP.NETのエラーページをIISで定義した物に
1
| 投稿者 | 投稿内容 |
|---|---|
|
投稿日時: 2003-03-26 14:22
現在エラーが発生した場合、ASP.NETが生成するエラーページ
'/hoehoe' アプリケーションでサーバー エラーが発生しました。 ------------------------------------------------------------------- ランタイム エラー (略) が出力されていますが、 これをIISで設定したエラーページを表示するのにはどうすれば良いのでしょうか? Releaseビルドしても Web.configにて <customErrors mode="RemoteOnly" /> としてみましたが駄目でした。 <error statusCode="〜" redirect="〜">で全部指定しなければならないのでしょうか? 追記です。 IIS5.0でVB.NETです。 [ メッセージ編集済み 編集者: kagura 編集日時 2003-03-26 14:33 ] |
|
投稿日時: 2003-03-27 00:29
それは、リモートクライアントでもASP.NETのエラー詳細が表示されてしまうということですか?
ModeをOnにしたらどうでしょう。 |
|
投稿日時: 2003-03-27 10:07
返信ありがとうございます。
<customErrors mode="On" /> を設定して、詳細表示をしたくないと言う訳では無く エラーが発生した時にブラウザに表示される画面を設定したページをIIS上で 設定したいのです。 ASP.NETのエラー画面の設定をIISの管理画面上から制御する方法を 色々と探し回ったのですが、どうにもその方法が判らないのです。 |
|
投稿日時: 2003-03-27 11:40
IISでエラーページの設定をしたいのなら、インターネット サービス マネージャを開いて、[(規定の)Webサイト]のプロパティから[カスタムエラー]タブを選んで、対応するエラーの箇所(500;100とか)を変更すればよいと思います。
ただしIEの場合はブラウザが勝手にエラー表示をすることも。 その場合を考慮するなら、Response.Statusを200とかにすれば良かったような(ASPの時代の話)。 外してます? いまいち何をおやりになりたいのか見えません。 |
|
投稿日時: 2003-03-27 11:50
返答になっているかどうか分かりませんが。
エラーをCatchして無理矢理以下のようなレスポンスを返しては? Response.StatusCode = 404 ←IISのHTTPエラーコード Response.End() アプリ全体に適用するなら個別にCatchするのではなく Global.asaxのApplication_Errorに書けば良いかと。 |
|
投稿日時: 2003-03-27 12:12
DaikiRyutoさん、nsfjさん返信ありがとうございます。
「IISで設定したエラーページ(500.html等)をASP.NETでエラーが発生した時に表示する」 と言う事をしたかったのです。 #説明下手ですんまんせん。 nsfjさんが提示してくれた方法で試したところ、 IISで設定したページが表示されるようになりました。 が、この状態ですといかなるエラーが発生した場合でも 問答無用で指定したエラーコードに対応するIISで設定したページが出てしまいます。 と、言ってもApplication_Errorに来る場合と言うのは基本的に 500(Internal Serve Error)で構わない様な気もするので これで行きます。 返信してくださったみなさんありがとうございました。 |
1
