2012-04-20 64 views
1

我有一個MVC 3應用程序,我一直在開發,它使用Forms身份驗證。在我的web.config文件中的唯一驗證碼我是:身份驗證問題在IIS7.5只有

<authentication mode="Forms"> 
    <forms loginUrl="~/Account/LogOn" timeout="2880" /> 
</authentication> 

我然後使用[Authorize]標籤中的每個單獨的控制器我需要限制訪問的。

我自己的計算機(Windows 7中),在線演示服務器(Windows 2003 IIS6.5)和本地生產服務器(Windows 2008的網絡版R2與IIS7.5)上運行的系統。

當我訪問Win2008服務器上的系統時,我按照預期重定向到登錄頁面,但沒有加載CSS樣式表,並且所有圖像都丟失(全部位於Content文件夾中)。這隻發生在Win2008服務器上,我的本地開發機器和Win2003機器上,CSS和圖像加載得很好。

對Content文件夾沒有限制,實際上它甚至包含自己的web.config,明確允許訪問未經過驗證的用戶。我也嘗試添加一行到主web.config允許完全訪問內容。

如果我把一個.htm文件在內容文件夾中,我可以在瀏覽器中訪問此。如果我嘗試訪問圖像或.css文件,我會立即重定向到登錄頁面!

我難倒,什麼可能會導致此。

+5

可能的重複http://stackoverflow.com/questions/3722399/my-asp-net-mvc2-application-with-forms-authentication-is-blocking-access-even-to – Wim 2012-04-23 13:47:54

回答

1

正如Wim提到的,重複的線程有答案(儘管在我的案例中接受答案的評論中)。

的問題是由IIS管理器中的身份驗證設置引起的。

選擇您的網站,然後選擇身份驗證。確保同時啓用匿名身份驗證和表單身份驗證。

就我而言,我還必須更改匿名用戶 - 爲此,請右鍵單擊匿名身份驗證並選擇編輯。將其更改爲應用程序池標識。

在此之後,圖像和樣式加載完美!