【发布时间】:2012-08-12 08:39:36
【问题描述】:
我有一个使用本地 SqlExpress 在本地模式下运行良好的网站。当我发布并放置最终的服务器连接字符串时,我不断得到无助的500 - Internal server error。
我尝试在本地调试模式下使用最终的服务器连接字符串,但即使这样它也使用本地 SqlExpress 实例,我不知道为什么!所以又是没用的。这是连接字符串:
<add name="MainDbContext" connectionString="Data Source=rose.arvixe.com;Initial Catalog=mydb;Persist Security Info=True;User ID=myuser;Password=mypassword" providerName="System.Data.SqlClient" />
我使用这些信息通过 Management Studio 连接到服务器,它工作正常。
是否有可能至少得到一个明确的错误信息?
在解决这个问题 7 小时后,我请求帮助。
编辑:如果我从页面中删除所有数据访问,它会起作用。一旦我创建上下文,就会发生错误。
【问题讨论】:
-
您完全确定是连接字符串导致了问题吗?您可以尝试查看 IIS 服务器上的事件日志,看看它是否抛出了无法通过网络写入的异常,因此只是返回了一个通用的 500 内部服务器错误。
-
如果您使用 Internet Explorer,您通常可以通过转到工具 | 获取更多信息。选项 |高级并关闭“友好的 http 错误消息”——根据您的错误配置,您将看到一些可能会给您提供线索的内容。可能很简单,因为安装在服务器上的 ASP.NET 版本不是您的目标,应用程序池运行时不正确等
-
也许你可以下载一个像 Fiddler 这样的 HTTP 监听器,然后记录下远程服务器返回给你的响应。如果你真的在浏览器上收到服务器错误通知,那么也许你可以使用浏览器调试工具,例如 Chrome 开发者工具...
-
@Adrian :我添加了一些说明。事实上,我不能 100% 确定这是连接问题,因为错误消息没有用。 Firebug 什么也没添加,IE 工具只是说服务器响应是错误
-
@Mathieu 最终服务器是否与数据库服务器位于同一网络?您确定最终服务器可以访问数据库服务器吗?您能否远程连接到最终服务器终端 (RDP)?
标签: c# asp.net-mvc-3 web-applications connection-string