2013-03-19 100 views
1

我似乎有一些問這個問題,但迄今沒有解決方案爲我工作,所以我想看看我是否做錯了什麼。我有一個網站,我正在使用asp.net MVC創建,目前我使用表單身份驗證來防止匿名用戶瀏覽網站。這一點代碼如下。在IE中的表單身份驗證

<authentication mode="Forms" > 
    <forms loginUrl="~/login" timeout="15"/> 
</authentication> 

然後我有了用戶輸入用戶名和密碼,然後創建一個authcookie如果該信息是準確的登錄控制器。

if (password == encryptedPassword) 
{ 
    FormsAuthentication.SetAuthCookie("user", true, model.userName); 
} 

所有這些工作在Firefox和Chrome和用戶登錄後,他可以瀏覽該網站。但是,在IE中,它會一直返回登錄屏幕,因爲它始終將用戶識別爲匿名用戶。我檢查並確認Auth cookie是從未創建的,或者只要您進入下一頁就不會保留。我的一些解決這個問題的嘗試涉及到在web.config中使用Cookieless。唯一有效的方法是將cookie放入URI中,而我們不能爲該網站添加cookie。然後我試着設置ticketCompatibilityMode =「Framework40」,但是那裏也沒有運氣。

我確實看到了一個具有非字母數字字符的域名的錯誤。我目前使用IP直接訪問域,所以我不知道期限是否會遇到這個問題,但即使是我的本地主機也會遇到同樣的問題。任何輸入將不勝感激。

回答