问题点:
用host名地址访问登陆画面后,输入用户名和密码后,不能通过认证,画面又回到了登陆画面。
比如地址(https://servername/login.aspx)(使用了SSL,这个应该没关系)但如果访问地址不用host名,用IP地址的话,就能顺利调到下个画面。
比如地址(https://123.456.789.1/login.aspx)服务器环境:
Windows 2003 R2ASP.NET2.0:
ASP.NET的Login控件
用host名地址访问登陆画面后,输入用户名和密码后,不能通过认证,画面又回到了登陆画面。
比如地址(https://servername/login.aspx)(使用了SSL,这个应该没关系)但如果访问地址不用host名,用IP地址的话,就能顺利调到下个画面。
比如地址(https://123.456.789.1/login.aspx)服务器环境:
Windows 2003 R2ASP.NET2.0:
ASP.NET的Login控件
可以参考http://hi.baidu.com/draculamx/blog/item/d3f9a0b34a05f2a3d9335aaa.html
我也遇到过你的问题,数据表里面明明有用户,却不能用来登录。后来发现,在用VS调试(http://host..)的时候注册的用户,放在iis中(http://192.168.1.2..)是不能用的.反过来也一样.因此,两种不同的浏览网页方式需要各自注册自己的用户,不能混用。很奇怪这样的问题,但一直不知道原因.
我估计是Membership.ValidateUser()和Membership.GetAllUsers()这些方法的问题。
解决办法就是自己做登录框,自己写业务层
这篇文章里最后写到“另有一情况,当C盘为NTFS分区时,发布目录放在C盘也会出现这样的情况”,我现在的发布目录就是放在C盘的(因为服务器就只有一个C盘),而且是NTFS格式的。是不是就是因为这个原因,但想知道为什么,而且怎么能解决它。