问题描述
俺的2003服务器打了SP2补丁后,每次登陆网站都会被重定向回登陆页面(打补丁之前一切正常),网站使用的是Forms身份验证,身份验证用的是微软的例子代码,已经稳定运行三年多了,我跟踪代码发现一切正常,只不过身份验证完成之后,跳转到其他页面时,立刻被强制跳回了登陆页面,俺做了几次实验,在2003和2003SP1下都正常,SP2下就肯定出这个问题,网站运行在.Net1.143版本下,哪位高手帮忙解决一下代码如下:FormsAuthentication.RedirectFromLoginPage(UserID,false);Response.Redirect("VerifySignIn.aspx");这个不行,登录后又回到登录页面;FormsAuthentication.SetAuthCookie(UserID,false);Response.Redirect("VerifySignIn.aspx");这个也一样不行WebConfig中的设置<authenticationmode="Forms"><formsname="Auth"loginUrl="SubModule/Login/Index.aspx"protection="None"timeout="60"path="/"/></authentication><!--授权此节设置应用程序的授权策略。可以允许或拒绝不同的用户或角色访问应用程序资源。通配符:"*"表示任何人,"?"表示匿名(未经身份验证的)用户。--><authorization><allowusers="*"/><!--<allowusers="[逗号分隔的用户列表]"roles="[逗号分隔的角色列表]"/><denyusers="[逗号分隔的用户列表]"roles="[逗号分隔的角色列表]"/>--></authorization>希望老大一定要指点迷津啊
解决方案
解决方案二:
stringstrCookiePath="../你的URL路径/VerifySignIn.aspx"FormsAuthentication.RedirectFromLoginPage(userName,createPersistentCookie,strCookiePath)注:userName经过身份验证的用户名。createPersistentCookie若要创建持久Cookie(跨浏览器会话保存的Cookie),则为true;否则为false。strCookiePathForms身份验证票证的Cookie路径。试试
解决方案三:
验证是看Cookie的,SP2可能出于安全考虑,在cookie上的设置动过了,你把cookie安全弄到最低试试刊
解决方案四:
引用2楼jamesfay的回复:
验证是看Cookie的,SP2可能出于安全考虑,在cookie上的设置动过了,你把cookie安全弄到最低试试刊
看看cookie