我正在尝试部署一个ASP.NET应用程序。我真的很讨厌。
无论如何,它的一部分使用表单身份验证进行保护,使用
SqlMembershipProvider
. 我已将成员资格提供程序配置为通过web.config使用SQL Server实例。
我可以通过Visual Studio使用“ASP.NET配置”工具来创建新用户。这似乎很好,并为每个用户在数据库表中创建一个新行。
然后,我可以使用新创建的凭据登录到受保护的区域。
这一切在Visual Studio开发调试服务器上都很好地工作。
当我将它部署到服务器时,问题就出现了。将项目的整个目录树(包括web.config)复制到服务器并尝试登录后,使用
完全相同的证书,
它告诉我“你的登录尝试没有成功。请再试一次。”
这怎么可能?
啊,我讨厌部署。
更新
我在登录页面中添加了以下代码。当我单击从服务器托管的页面时,可以在服务器上使用凭据登录。
protected void CreateAdminButton_Click(object sender, EventArgs e)
{
System.Web.Security.Membership.DeleteUser("admin");
System.Web.Security.Membership.CreateUser("admin", "asdfasdf", "admin@email.com");
}
新的管理记录在同一数据库中可见。管理员凭据
不能
然后用于从dev计算机登录。这给我提供了一种使用服务器和dev box上不同密钥的加密哈希算法。