web-dev-qa-db-ja.com

pg_connect():PostgreSQLサーバーに接続できません

この正確な問題に対するこの修正の詳細については、複数の記事を読みました。 pg_hba.confファイルの編集のあらゆる種類を試しましたが、使用しようとしているphpプログラムを実行しようとすると、Apacheログに次のエラーが表示されます。

木3月28 08:20:21 2013] [エラー] [クライアント172.16.1.64] PHP警告:pg_connect():> PostgreSQLサーバーに接続できません:致命的:ユーザーのピア認証に失敗しました

これは私の現在のpg_hba.confファイルです:

Imgur

私は他に何を試すべきかわかりません、どんな助けも大歓迎です!

ありがとう!

3
Mysteri0n

pg_hba.confの最初のルールを検討してください。

ローカルすべてすべてピア

つまり、すべてのローカル接続で、Unixユーザーはdbユーザーと同じでなければなりません。明らかにこれはあなたのPHPコードには当てはまらないので、失敗ユーザーのピア認証に失敗しました...

2番目のルールはスクリプトの接続を許可しますが、最初のルールが優先されるため無視されます。

ローカルすべてのすべての信頼

このルールは、パスワードを必要とせず、IDを確認することなく、すべてのローカル接続が許可されることを意味します。

それで問題なければ、最初のルールを削除し、postgresqlサービスをリロードして変更を有効にします。

他のルールはTCP接続に関連しているため、問題に関連してはなりません。エラーメッセージによると、スクリプトで使用されているメソッドではなく、デフォルトのUnixを介して接続しようとしています。ドメインソケット。

0
Daniel Vérité