2016-10-28 41 views
0

在我的MVC「電子學習」項目中,我有一個文件夾「課程」,每個用戶都有一個文件夾,每個用戶都有一個文件「index.html」。如何限制用戶訪問靜態內容

我的問題一樣,沒有一個可以直接訪問該文件夾頁

USER1不能訪問user2的文件夾內容有任何人都無法訪問除了誰擁有正確的文件夾的內容。

「我不想使用的形式認證」

,如:

這不應該happend。

本地主機:7689 //課程/用戶1/index.html的

唯一授權使用可以訪問此沒有其他人可以訪問此。

方案

USER1登錄那麼他只能訪問該文件夾 「用戶1」 本地主機:7689 //課程/用戶1/index.html的

user2的登錄那麼他只能訪問該文件夾「用戶2」 本地主機:7689 //課程/用戶2/index.html的

在此先感謝

回答

0

只是簡單:

第1步:在RouteConfig.cs中添加

routes.RouteExistingFiles = true;

第2步:您的映射靜態內容的網址與控制器和行動,檢查authirization

routes.MapRoute( 名稱: 「staticFileRoute」, 網址: 「課程/ {子文件夾}/{文件}」, 默認值:new {controller =「Account」,action =「HandleStatic」});

在控制器:--- 公衆的ActionResult HandleStatic(){ 回報 文件(Request.RawUrl, 「text/html的」); }

第3步:在Web.Config中添加

記住,你不能獲得破發點,以RouteConfig文件,你只得到控制。

-1

您可以使用密碼保護使用htpassw目錄d - 管理基本身份驗證的用戶文件併爲每個用戶創建用戶名/密碼,但你將有機會分享與每個用戶因爲這些登錄信息,當你創建它們手動