我已經在ASP.NET中遞交了一個Web項目。它包含一個Content
文件夾和一個index.html
文件。目前,人們可以去mysite.com/content/index.html
。這個項目中沒有MVC控制器(我沒有自己製作)。對文件夾不起作用的表單身份驗證
我不希望人們直接進入HTML頁面。我在我的網站的根目錄上有一個登錄頁面(所以mysite.com
),所以我想在那裏重定向用戶,如果他們沒有登錄。我用Index方法創建了我自己的HomeController。我已經設置了ASP.NET身份來授予對該方法的所有請求。我想設置表單身份驗證,將所有未經授權的請求重定向到Content文件夾及其內容到/ Home/Index(或簡單地稱爲網站根/)。
我發現本網站上幾個答案和其他地方很相似: 在該網站的根目錄的Web.config,我有這樣的代碼:
<configuration>
<location path="~/Content">
<system.web>
<authorization>
<deny users="?" />
</authorization>
</system.web>
</location>
<!-- some other nodes -->
<system.web>
<authentication mode="Forms">
<forms name=".ASPXAUTH" loginUrl="/" />
</authentication>
</system.web>
</configuration>
但是,這並不工作,如果我去mysite.com/content/index.html
我沒有重定向到mysite.com
。我也嘗試在不同的web.config文件中拆分這些文件,如this的答案中所述。我究竟做錯了什麼?
爲我工作!非常感謝,很多答案都沒有提到這一部分。 – ohyeah