2015-05-17 45 views
0

我正在開發一個正常的MVC項目的CDN服務器。但是,在項目文件夾中,假設我有​​文件夾,並且我希望每個人都可以訪問其中的任何文件,任何文件擴展名以及僅限於​​文件夾。也就是說,我不希望我的web.config文件或Views文件夾被暴露。配置IIS或Web.config以僅在特定文件夾中提供所有文件

有沒有辦法做到這一點,而不使用自定義ControllerRouteHandler

編輯:指定我正在尋找一種方式在IIS或Web.config或在Controller或RouteHandler編寫代碼的其他地方,所以它不是重複的。

繼大衛·岡德森答案,這裏是我的web.config,允許CDN文件夾:

<location path="CDN"> 
    <system.webServer> 
     <staticContent> 
     <mimeMap fileExtension="*" mimeType="application/octet-stream"/> 
     </staticContent> 
    </system.webServer> 
    </location> 
+0

[使用ASP.NET路由爲靜態文件]中可能重複(http://stackoverflow.com/questions/1149750/using-asp-net-routing-to-serve-static-files) –

回答

1

你可以在你的web配置配置您的網站的特定子目錄位置設置:

https://msdn.microsoft.com/en-us/library/ms178692%28v=vs.140%29.aspx

如果放置在根web.config中,以下操作將授予所有用戶訪問CDN文件夾的內容的權限。它將授權訪問,即使你有窗體身份驗證開啓您的網站的其餘匿名用戶:

<location path="CDN"> 
     <system.web> 
      <authorization> 
       <allow users="*"/> 
      </authorization> 
     </system.web> 
    </location> 
+0

太棒了!非常感謝你。遵循允許類型擴展的搜索,我做到了。在問題中更新了我的解決方案。 –

+0

太棒了。祝你好運。 –

相關問題