asp.net IIS “/”应用程序中的服务器错误 解决方案[sql server 2000和 sql server 2005共存, web.config]
2013-03-06 17:57
731 查看
由于工作需要, 为网站换空间数据库时出现了 应用程序中的服务器错误, 这个提示, 我的服务器具体环境是,win server 2003+IIS6.0+.net2.0+sql server 2000+sql server 2005, 也就是说同一台服务器要sql server 2000和sql server 2005共存, 并且已经有几个站分别分布到这两个数据库内, 也就是说这两个服务器是可以共存的. 为什么提到这一点, 在下文的问题分析时会提到原因. 外部环境大致就是这样了. 再来介绍一下要转移的网站对象. .net程序开发, sql server 2005数据库支持. 有一点要说明的是, 这个数据库连接字符串是用工具加密的, 加密的信息也就是包括数据库名,用户名和密码及服务器的IP这四个选项, 在上线之前已经在本地测试通过(本地是单个的sql server 2005数据库). 一切OK, 把网站传到服务器上, 将备份的数据库还原到服务器的sql server 2005内. 然后用将数据库的相关信息输入到加密的工具里, 却出现连接错误的提示.
出现这个问题时首先的反应是:
问题1: 数据库不兼容的问题, 但是后来一想,如果真是这样的问题的话, 为什么其他的sql server 2005的站都可以正常访问呢? 应该不是这个问题. 这个疑点被排除;
问题2: 数据库没有被正确还原, 基于这个思路我查了其中一个表, 结果发现有数据输出, 这个这个疑点被排除;
问题3: 既然程序和数据库在本地的测试正常, 而同样的程序和数据在服务器上出现这个问题, 那很大的可能是数据库的连接有问题, 这一点无法排除, 所以就基于这一点进行解决. 根据由易到难的思路来解决, 按照这个工具的提示, 先用sa帐户和密码进行登陆, 结果如上图. 由于这个sa是sql server 2005数据库的, 故且用sql server 2000的sa密码来测试, 结果发现竟然可以成功连接了, 这样问题就很明显了, 问题原因就是由于在数据库连接时, 系统默认的是采用sql server 2000的sa用户名及密码, 之后又为sql server 2005新建了一个新的用户及设置了密码, 使用这个工具还是不能成功连接, 而经过实践可知, 这sql server 2000和sql server 2005数据库的sa的密码不能一样. 解决这个问题的方案出现了, 也就是如果能找到使连接工具连接字符串时, 能保证使用sql server 2005作为默认选项即可. 后来经群里的朋友指点, 要启用sql server 2005作为默认的选项很简单, 就是在数据库所在的IP这个地址里用: .\数据库实例名 来代替.这个点即可. 按照这种思路,在系统的右下角一个sql server管理器中找出对应sql server 2005的实例名, 如下图:
具备了连接数据库的一切要求, 然后将相关信息输入到加密工具内, 进行测试, 结果发现可以成功连接, 这个问题解决.
剩下的工作就很简单了, 直接"执行配置", 该工具直接更新了web.config这个文件的数据库连接信息, 如果程序没问题, 该站就可以正常运行了. 至此, “/”应用程序中的服务器错误, 这个问题得到解决
注:我的这个问题应该是个案, 所以仅供有sql server 2000和sql server 2005数据库共存的朋友参考.
本文系原创,地址:/article/5960559.html
出现这个问题时首先的反应是:
问题1: 数据库不兼容的问题, 但是后来一想,如果真是这样的问题的话, 为什么其他的sql server 2005的站都可以正常访问呢? 应该不是这个问题. 这个疑点被排除;
问题2: 数据库没有被正确还原, 基于这个思路我查了其中一个表, 结果发现有数据输出, 这个这个疑点被排除;
问题3: 既然程序和数据库在本地的测试正常, 而同样的程序和数据在服务器上出现这个问题, 那很大的可能是数据库的连接有问题, 这一点无法排除, 所以就基于这一点进行解决. 根据由易到难的思路来解决, 按照这个工具的提示, 先用sa帐户和密码进行登陆, 结果如上图. 由于这个sa是sql server 2005数据库的, 故且用sql server 2000的sa密码来测试, 结果发现竟然可以成功连接了, 这样问题就很明显了, 问题原因就是由于在数据库连接时, 系统默认的是采用sql server 2000的sa用户名及密码, 之后又为sql server 2005新建了一个新的用户及设置了密码, 使用这个工具还是不能成功连接, 而经过实践可知, 这sql server 2000和sql server 2005数据库的sa的密码不能一样. 解决这个问题的方案出现了, 也就是如果能找到使连接工具连接字符串时, 能保证使用sql server 2005作为默认选项即可. 后来经群里的朋友指点, 要启用sql server 2005作为默认的选项很简单, 就是在数据库所在的IP这个地址里用: .\数据库实例名 来代替.这个点即可. 按照这种思路,在系统的右下角一个sql server管理器中找出对应sql server 2005的实例名, 如下图:
具备了连接数据库的一切要求, 然后将相关信息输入到加密工具内, 进行测试, 结果发现可以成功连接, 这个问题解决.
剩下的工作就很简单了, 直接"执行配置", 该工具直接更新了web.config这个文件的数据库连接信息, 如果程序没问题, 该站就可以正常运行了. 至此, “/”应用程序中的服务器错误, 这个问题得到解决
注:我的这个问题应该是个案, 所以仅供有sql server 2000和sql server 2005数据库共存的朋友参考.
本文系原创,地址:/article/5960559.html
相关文章推荐
- Web 应用程序的问题 (web.config 错误) HTTP 500.19 与 IIS7.5 和 asp.net v2
- asp.net发布网站到服务器上时候出现“/web”应用程序中的服务器错误。访问 IIS 元数据库失败。 用于运行 ASP.NET 的进程帐户必须具有对 IIS 元数据库(如 IIS://servername/W3SVC)的读访问权。
- Microsoft 数据库三版本共存:SQL Server 2000(SP4) + SQL Server 2005(SP2) + SQL Server 2008
- iis7 发布mvc3 遇到的HTTP错误 403.14-Forbidden Web 服务器被配置为不列出此目录的内容及Login on failed for "IIS APPPOOL\ASP.NET
- asp.net服务器错误-在应用程序级别之外使用注册为 allowDefinition='MachineToApplication' 的节是错误的。如果在 IIS 中没有将虚拟目录配置为应用程序,则可
- 将 ASP.NET 2.0 应用程序服务配置为使用 SQL Server 2000 或 SQL Server 2005
- 我所遇到的“调试 ASP.NET 应用程序时出现‘无法在 Web 服务器上启动调试’的错误信息”
- iis7 发布mvc3 遇到的HTTP错误 403.14-Forbidden Web 服务器被配置为不列出此目录的内容及Login on failed for "IIS APPPOOL\ASP.NET v4.0"问题
- asp.net配置IIS后"服务器应用程序不可用"的解决办法 服务器应用程序不可用 您试图在此Web服务器上访问的Web应用程序当前不可用。
- asp.net配置IIS后"服务器应用程序不可用"的解决办法 服务器应用程序不可用 您试图在此Web服务器上访问的Web应用程序当前不可用
- SQL 2005 安装在双CPU服务器,错误代码1053 SQL Server 服务无法启动的解决方案
- 将 ASP.NET 2.0 应用程序服务配置为使用 SQL Server 2000 或 SQL Server 2005
- 调试 ASP.NET 应用程序时出现"无法在 Web 服务器上启动调试"的错误
- VS中一个解决方案有多个Web网站.如何不启动全部asp.net development server(WEB服务器)
- 将 ASP.NET 2.0 应用程序服务配置为使用 SQL Server 2000 或 SQL Server 2005
- 调试 ASP.NET 应用程序时出现"无法在 Web 服务器上启动调试"的错误信息
- 将 ASP.NET 2.0 应用程序服务配置为使用 SQL Server 2000 或 SQL Server 2005
- IIS安全工具UrlScan介绍 ASP.NET 两种超强SQL 注入免费解决方案( 基于IIS,使用免费工具) 批改或隐藏IIS7.5的Server头信息 移除X-Powered-By,MVC,ASP.NET_SessionId 的 HTTP头或者cookie名称
- vs2003提示:试图运行项目时出错:无法在WEB服务器上启动调试.未能启动ASP.NET或ATL SERVER 调试. 验证服务器上是否正确安装了ASP.NET或ATL SERVER的解决方案
- IIS运行不了ASP.NET的解决方案 & HTTP 500 - 内部服务器错误的解决方案