1

私は、nginxをWebサーバーとして使用し、npgsqlドライバーを使用してpostgreSQLデータベースにアクセスする、monoフレームワークの上にasp.net mvc Webプロジェクトを開発しています。

データベースが含まれていない場合、プロジェクトは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 のデータベースへのアクセスをブロックしているようです。それを修正する方法はありますか?

参考までに、私は ORM として nhibernate、mono 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 フレームワークでは正常に実行されますが、モノ フレームワークではデータベースに接続できません。したがって、問題はnginxではなくmonoにあります。それでも、私はそれを修正する方法がわかりません。

4

1 に答える 1

1

Mono 2.10.2 を使用していますか? Npgsql とこの mono バージョンに問題があるようです。2.10.4 をお試しください。私もこの問題を抱えていましたが、2.10.4 で修正されました。お役に立てば幸いです。

于 2011-08-20T22:14:09.117 に答える