(译注:在使用Visual Studio开发Web网站时,有Asp.Net配置选项)
那么如何在不使用Visual Studio的情况下,进行Membership的配置?下面列出主要步骤:
供参考:因为以下操作会暴露出一些管理能力,操作时要很小心,并且在明确正确的目的的情况下进行操作。
1、在IIS中建立虚拟目录:
虚拟目录: ASP.NetWebAdminFiles
物理路径: C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\ASP.NETWebAdminFiles
2、修改虚拟目录的属性,将ASP.NET的版本改成2.0
注意:如果在同一台机器上运行1.1和2.0的应用程序,你需要为2.0的站点安装一个单独的应用程序池,否则会出现以下错误提示:"Application Unavailable"
3、将虚拟目录的匿名访问去除
4、然后,你可以使用如下的url连接管理控制台:
http://localhost/ASP.NETWebAdminFiles/default.aspx?applicationPhysicalPath=XXX&applicationUrl=/YYY
我的一个例子:
http://localhost/ASP.NETWebAdminFiles/default.aspx?applicationPhysicalPath=C:\inetpub\wwwroot\myapp\&applicationUrl=/myapp
注意:以下是不推荐使用的。
如果你需要远程连接这个管理控制台,打开C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\ASP.NETWebAdminFiles\App_Code目录下的WebAdminPage.cs文件,将如下的一段代码注释掉:
if (!application.Context.Request.IsLocal)
{
SecurityException securityException = new SecurityException((string)HttpContext.GetGlobalResourceObject(
"GlobalResources", "WebAdmin_ConfigurationIsLocalOnly"));
WebAdminPage.SetCurrentException(application.Context, securityException);
application.Server.Transfer("~/error.aspx");
}
这个管理控制台仍然受Windows集成认证的保护。
如果更新用户信息时报如下错误:
Failed to update database "C:\inetpub\wwwroot\myapp\App_Data\ASPNETDB.MDF" because the database is read-only.
是因为NETWORK_SERVICE帐户没有对这个MDF文件的读写权限。