2016-04-05 30 views
1

私は認証なしでMVCのWebサイトを持っています。ウェブサイトのディレクトリには、Notes.txt内のファイルを含むフォルダ\ ProjectNotesがあります。このフォルダもテキストファイルもソリューションの一部ではありませんが、パブリッシュ時にはまだコピーされています。MVC Webサイト - 静的ファイルへのアクセスを防ぐ方法

私の問題は、誰でも誰でもmysite.com/ProjectNotes/Notes.txtにアクセスでき、私はそれを防ぐことができないということです。私はエラーページ(効果なし)にユーザーを連れて行く特定のルートを追加しようとしましたが、Web設定で試したが、どちらもうまくいきませんでした。

MVCフレームワークを使用してNotes.txtファイルにアクセスできないようにするにはどうすればよいですか?

+0

(または他のウェブサーバーの制限が、私は、IISを使用して仮定) :routes.IgnoreRoute( "{リソース} .txt/{* pathInfo}"); –

+0

何もしません。 .axdファイルを無視するのと同じ行があります。 – VictorySaber

+0

あなたはそれを試してみました..それはあなたがrobot.txtファイルを使用することができますし、あなたがアクセスしやすいようにしたくないパスを書くことができれば、あなたはrobot.txtファイルについてもっと調べることができます。コードはそれのいくつかの効果があるので、何もしないと言わないでください –

答えて

4

あなたのケースにはWeb.Configファイルを使用する必要があります。 <system.webServer>セクションにあなたのルートにWeb.Configファイルを追加します。

<security> 
    <requestFiltering> 
    <hiddenSegments> 
     <add segment="ProjectNotes"/> 
    </hiddenSegments> 
    </requestFiltering> 
</security> 

実際にあなたの質問は、MVCと何の関係もありませんが、IISの制限付きでこれはあなたのために働く必要があります

+0

これは最善の方法です:) – VictorySaber

+0

@ VictorySaberはうれしい助けて;) –