1

我正在mono框架之上开发asp.net mvc web项目,使用nginx作为web服务器和npgsql驱动程序来访问postgreSQL数据库。

如果不涉及数据库,该项目在 nginx Web 服务器上运行良好。但是当我使用数据库时,该站点抛出HTTP 500 错误

无法建立到“127.0.0.1”的连接。

说明:HTTP 500。处理请求时出错。

堆栈跟踪:

System.Exception:无法建立到“127.0.0.1”的连接。在 Npgsql.NpgsqlClosedState.Open (Npgsql.NpgsqlConnector 上下文) [0x00000] 在 :0

似乎 nginx 阻止了 npgsql 对数据库的访问。知道如何解决吗?

仅供参考,我使用 nhibernate 作为 ORM,单声道 2.10(在 Windows 上)。

编辑

我创建了一个简单的控制台项目来测试连接:

string connString = "Server=127.0.0.1;Database=unitydb;User Id=admin;Password=admin;";
NpgsqlConnection conn = new NpgsqlConnection(connString);
conn.Open();
conn.Close();
Console.WriteLine("Success");

程序在 .NET 框架上运行良好,但无法连接到 mono 框架上的数据库。所以,问题出在单声道而不是 nginx 上。不过,我不知道如何解决它。

4

1 回答 1

1

您使用的是 Mono 2.10.2 吗?Npgsql 和这个单声道版本似乎有问题。请尝试 2​​.10.4。我也遇到了这个问题,2.10.4 修复了它。我希望它有所帮助。

于 2011-08-20T22:14:09.117 回答