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 接続は機能しません...
何がうまくいかないのですか?私が見逃しているのは何ですか?