1

私の Web サイトには、さまざまなドキュメント (pdfs、word ドキュメント、txt ファイル、excel ドキュメント、画像など) を含む多くのフォルダーを含む別のフォルダーを含むフォルダーがあります。ユーザーがブラウザーを介してこれらのドキュメントに移動できないようにしたい. これどうやってするの?MVC3を使用しています。

4

3 に答える 3

3

ディレクトリ構造をApp_Data特別なフォルダ内に移動できます。このフォルダには直接アクセスできません。次に、IDを指定してファイルをクライアントにストリーミングするコントローラーアクションを作成するだけです。次に、コントローラーアクションをAuthorize属性で装飾して、認証されたユーザーのみがアクセスできるようにします。

于 2012-05-01T16:51:29.227 に答える
1

ディレクトリブラウジングは、ユーザーがフォルダー内のドキュメントのリストを表示できないようにするだけですが、ユーザーが既存のドキュメントを指す有効なURLを入力して表示するのを防ぐことはできません。それが必要な場合は、そのフォルダーへのすべてのユーザーへのアクセスを拒否する必要があります。

<location path="folder">
<system.web>
<authorization>
  <deny users="*"/> 
</authorization>
</system.web>
</location>
于 2012-05-01T16:52:31.083 に答える
1

IISで簡単に実行できない場合は、Web.configで実行してください。

<configuration>
  <location path="Secured">
    <system.webServer>
      <directoryBrowse enabled="false" />
    </system.webServer>
  </location>
</configuration>

[編集]

ディレクトリの一覧表示を防ぐだけでなく、コンテンツにアクセスできないようにしたいようです。その場合、イカロスの答えの追加の手順を実行します。

于 2012-05-01T16:52:54.157 に答える