3

ユーザーがアクセス権のないリソースにアクセスしようとすると、サーバーが 403 禁止エラーを返します。ヘッダーとともに、サーバーはエラーを説明する小さなメッセージも書き込みます。

Firefox では、エラー メッセージが適切に表示され、ユーザーは何が起こっているかを理解できます。

Internet Explorer では、メッセージは非表示になり、403 Forbidden 標準エラー ページに置き換えられます。

ステータスを 403 Forbidden に設定したまま、すべてのブラウザでエラー メッセージを表示できる特定のルールはありますか?

このステータスに関する RFC 情報は次のとおりです。

サーバーは要求を理解しましたが、要求を満たすことを拒否しています。承認は役に立たず、要求を繰り返すべきではありません。リクエスト メソッドが HEAD ではなく、サーバーがリクエストが実行されなかった理由を公開したい場合、拒否の理由をエンティティに記述する必要があります。サーバーがこの情報をクライアントに提供したくない場合は、代わりにステータス コード 404 (Not Found) を使用できます。

メッセージを設定する必要があるようですが、IE では表示されません。

4

2 に答える 2

6

403ページを大きくしてみてください(つまり、バイト数を増やしてください)。一部のブラウザは、短いエラーページがWebサーバーのデフォルトページであると想定し、独自の、おそらくより役立つテキストを表示することを決定します。

詳細情報

于 2009-11-04T21:46:52.590 に答える
0

エラー処理の実装はブラウザに依存します。HTTP で 403 エラーを返すだけの場合は、ユーザー エージェント (ブラウザーの技術名であり、エラー メッセージの受信者がブラウザーではない可能性があります) に依存して、適切と思われる方法を処理する必要があります。

ブラウザーが 403 エラーを処理する方法が気に入らず、すべてのブラウザーで一貫したユーザー エクスペリエンスを確保したい場合は、ユーザーを独自の「許可が拒否された」ページにリダイレクトします。許可が拒否された理由と、許可が拒否された場合に何ができるかを説明できるページを作成できます。また、どのブラウザでも一貫しています。

于 2009-11-04T16:19:53.970 に答える