FormsAuthenticationTicket的超时功能停止工作

时间:2013-10-23 02:13:30

标签: c# asp.net

我非常需要帮助。我花了很多时间试图弄清楚发生了什么。 我使用FormsAuthenticationTicket来管理用户连接。在这里:

FormsAuthenticationTicket authTicket = new FormsAuthenticationTicket(
        1, userName, System.DateTime.Now, System.DateTime.Now.AddMinutes(timeout),
        false, "", FormsAuthentication.FormsCookiePath);

string encryptedTicket = FormsAuthentication.Encrypt(authTicket);

HttpCookie authCookie = new HttpCookie(FormsAuthentication.FormsCookieName,
        encryptedTicket);
authCookie.Expires = DateTime.Now.AddMinutes(timeout);
HttpContext.Current.Response.Cookies.Add(authCookie);

所以没什么好疯狂的。我在我的实时网站上做了一些更新(但不在票证代码上),现在当我超时时,“ReturnUrl”参数不再出现在登录页面的Url中。

我的问题是:你有什么基本的建议,当票证开始行动时在哪里搜索?

谢谢大家。

1 个答案:

答案 0 :(得分:0)

我终于找到了解决方案,所以我把它放给了可能有问题的其他人。

生产服务器上缺少另一个文件Web.config。该文件唯一包含的内容是:

<configuration> 
  <system.web> 
    <authorization> 
       <deny users="?" /> 
    </authorization> 
  </system.web> 
</configuration> 

现在超时功能再次起作用。如果有人对此代码有用的原因有任何解释,我想知道。