9

OSX の VirtualBox で CentOS 7 を実行しています。Apache、PHP 5.4、および PostgreSQL 9.2 がすべて実行されています。しかし、私の (単純な) php-script が PostgreSQL に接続しようとすると、動作しません:

警告: pg_connect(): PostgreSQL サーバーに接続できません: サーバーに接続できませんでした: 許可が拒否されました サーバーはホスト "127.0.0.1" で実行されており、ポート 5432 で TCP/IP 接続を受け入れていますか? /var/www/html/pg.php の 7 行目

チェック:

  • アパッチが動いている
  • PHP は問題ありません。phpinfo() は、PostgreSQL 関数が使用可能であることを示します。
  • PostgreSQL 9.2 が実行されています
  • psql は、localhost または 127.0.0.1 および 192.168.178.111 を使用してデータベースに接続できます。
  • 私のMacのpgAdminは、IPアドレス192.168.178.111を使用してこのデータベースに接続できます
  • iptables がオフになっている
  • pg_hba.conf は、パスワードなしですべての接続を受け入れるように変更されました (ばかげています、私は知っています):

ホスト すべて すべて 0.0.0.0/0 信頼

しかし、phpは接続できません....これは私のスクリプトです:

<?php
ini_set('display_errors', 1);
error_reporting(E_ALL);

echo 'hello world!';

$conn = pg_connect('host=127.0.0.1 port=5432 user=postgres dbname=postgres');
?>

内部接続は機能し (psql)、外部接続も機能します (ラップトップの pgAdmin) が、php 接続は機能しません...

何がうまくいかないのですか?私が見逃しているのは何ですか?

4

1 に答える 1