IIS-部署ASP.NET网站和数据库连接

IIS - Deploying an ASP.NET Website and Database Connectivity

本文关键字:数据库连接 网站 NET 部署 ASP IIS-      更新时间:2023-10-16

我有一个用ASP.NET编写的网站,并试图在Windows 7上部署它。

我已经成功部署了该网站,并且可以正常运行,直到我尝试访问连接到数据库的页面为止。显示以下错误:

"/'应用程序中的服务器错误"。


无法打开登录要求的数据库"银行"。登录失败。用户'IIS AppPool asp.net V4.0'登录失败。描述:执行当前Web请求期间发生了一个未经治疗的例外。请查看堆栈跟踪,以获取有关该错误以及代码中何处的更多信息。

异常详细信息:system.data.sqlclient.sqlexception:无法打开登录要求的数据库"银行"。登录失败。用户'iis apppool asp.net v4.0'。

登录失败

源错误:在执行当前的Web请求期间生成了一个未指导的例外。可以使用下面的异常堆栈跟踪来识别有关异常的原点和位置的信息。

堆栈跟踪:

[sqlexception(0x80131904):无法打开登录要求的数据库"银行"。登录失败。用户'IIS Apppool asp.net V4.0'登录失败。] system.data.sqlclient.SQLineteralConnection.OnError(Sqlexception异常,布尔breakConnection) 6351920 system.data.sqlclient.tdsparser.throwexceptionandwarning() 412 system.data.sqlclient.sqlinettralterconnectiontds.completelogin(boolean eneristok) 53 system.data.sqlclient.sqlinethralternalconnectiontds.openloginenlist(sqlConnection honsingObject,timeouttimer timeout,sqlConnectionstring connectionOptions,string newpassword,newpassword,boolean redirecteduserinstance) system.data.sqlclient.Sqlinethralteral Connectiontds..ctor(dbConnection -poolidentity身份,sqlConnectionsTring ConnectionOptions,Object ProviderInfo,String newPassword,sqlConnection onsingObject system.data.sqlclient.SQLConnectionFactory.CreateConnection(DBConnectionOptions选项,Object PoolGrouProuproviderInfo,dbConnectionpool pool,dbConnection andingConnection) 831 system.data.data.providerbase.dbconnectionfactory.createpooledconnection(dbConnection Conconnection,dbConnection -pool池,dbConnectionOptions选项) 49 system.data.providerbase.dbconnectionpool.createobject(dbConnection oningObject) 6368598 system.data.data.providerbase.dbconnectionpool.usercreaterequest(dbConnection oningObject) 78 system.data.providerbase.dbconnectionpool.getConnection(dbConnection oningObject) 2194 system.data.providerbase.dbconnectionfactory.getConnection(dbConnection Conconnection) 89 system.data.providerbase.DBConnectionClosed.Opennection(dbConnection outerConnection,dbConnection -Factortory connection -factory) 6372110 system.data.sqlclient.sqlconnection.open() 300 system.web.ui.webcontrols.imagebutton.onclick(imageclickeventargs e) 187 system.web.ui.webcontrols.imagebutton.raisepostbackevent(string eventargument) 165 system.web.ui.page.processrequestmain(boolean includestagesbeforeasyncpoint,boolean incluce includeftages afterAsyncpoint) 3707


版本信息:Microsoft .NET框架版本:4.0.30319;ASP.NET版本:4.0.30319.272

我使用以下过程在IIS中部署网站:

  1. 转到桌面/代码/info_leakage_vulnerable
  2. 复制info_leakage_vulnerable
  3. 转到C:/inetpub/wwwroot
  4. 粘贴那里的文件夹
  5. 打开开始菜单
  6. 类型inetmgr
  7. 开放home-pc/sites
  8. 右键单击网站,然后单击添加网站

站点名称= info_leakage_vulnerable

应用程序池= ASP.NET版本4

物理路径=通往c:/inetpub/wwwroot/info_leakage_vulnerable

的文件夹路径

port = 1000

  1. 右键单击info_leakage_vulnerable在网站菜单中,然后单击"切换到内容"视图
  2. 单击homepage.aspx,然后单击浏览

该网站在Visual Studio中完美运行。从IIS运行网站时,我遇到的问题出现了。我该如何解决数据库连接的问题?谢谢

master数据库中的查询下方执行。您必须为IIS APPPOOLASP.NET v4.0

创建登录
CREATE LOGIN [IIS APPPOOLASP.NET v4.0] FROM WINDOWS WITH DEFAULT_DATABASE=[master], DEFAULT_LANGUAGE=[us_english]
GO
CREATE LOGIN [NT AUTHORITYNETWORK SERVICE] FROM WINDOWS WITH DEFAULT_DATABASE=[master], DEFAULT_LANGUAGE=[us_english]
GO

如果您在执行查询后仍面临问题,请按照以下步骤

  1. 在IIS中,从Applications Pools选择ASP.NET v4.0应用程序池
  2. 右键单击ASP.NET v4.0->选择Advanced Settings...
  3. 在"流程模型"部分下,将身份值更改为 LocalSystem
  4. iisreset

希望这会有所帮助。