2017-12-04 8 views
0

Webサーバー上のディレクトリにアクセスしようとすると、403メッセージが表示されますが、ハッカーはフォルダが存在するという手がかりを与えます。Webサイトのディレクトリブラウズを停止するだけでなく、既定のドキュメントを許可する方法

私はこの問題の究極の解決策を見つけたと思った - web.configファイルのsystem.webServerにこれを追加することによって:

<handlers> 
    <add name="StopDirectoryBrowsing" path="*." resourceType="Directory" verb="*" type="System.Web.HttpNotFoundHandler" preCondition="integratedMode" /> 
</handlers> 

これを正しく使用すると、ディレクトリを訪問しようとすると404を発生させます。

しかし、悲しいことに悲しいことに、これはトップレベルのデフォルトのドキュメントメカニズムを無効にします。

誰でもデフォルトドキュメントが動作することを許可するが、まだサブディレクトリを保護することができる上記の変形を提案することはできますか。

答えて

1

これは実際に返されたステータスコードは変更されませんが、あなたは<customErrors>を使って、好きなリダイレクトできます。

<customErrors mode="RemoteOnly" defaultRedirect="~/redirect/error-status.aspx"> 
    <error statusCode="403" redirect="~/redirect/access-denied.aspx" /> 
    <error statusCode="404" redirect="~/redirect/file-not-found.aspx" /> 
</customErrors> 

あなたがしたい場合は、あなたが1つのページにすべてのステータスコードをリダイレクトすることができます。

+0

リダイレクトディレクトリは完全にあなた次第です。それを作成してそこにカスタムページを配置します。必要に応じて.htmlページにすることができます。 – wazz

+0

ありがとう、私はそれを与えると戻って報告する – user2728841

関連する問題