2010-08-14 21 views
5

EDIT: Ho appena realizzato che questa domanda potrebbe essere più adatta a ServerFault. Invece di copiarlo, un moderatore si prega di spostarlo? Grazie.Impossibile connettersi a PostgreSQL con PHP pg_connect()

Ho controllato php-info e l'estensione Postgresql è lì (pg_connect() non è undefined). Sono anche in grado di connettermi a postgresql usando psql su localhost (ho modificato il mio file pg_hba.conf in modo appropriato). Ecco il codice che non funziona:

<?php 
$dbconn = pg_connect("host=localhost port=5432 dbname=mydb user=myuser password=mypass") or die('Could not connect: ' . pg_last_error()); 
?> 

Questo codice si traduce semplicemente in "Impossibile connettersi:" essere visualizzato nel browser.

ho controllato il mio log di Apache, ed ecco il messaggio di errore relativo:

PHP Warning: pg_connect() [<a href='function.pg-connect'>function.pg-connect</a>]: 
Unable to connect to PostgreSQL server: could not connect to server: Permission 
denied\n\tIs the server running on host &quot;localhost&quot; and accepting\n\tTCP/IP 
connections on port 5432? 

Come posso risolvere il problema/debug questo?

Modifica: I'm on Centos 5.4 btw.

risposta

10

Impossibile connettersi al server: Permesso negato

Edit: Sono su CentOS 5.4 btw.

Verificare /var/log/audit/audit.log. È probabile che tu stia colpendo una regola SELinux.

+2

Grazie, era così. Ho appena fatto 'setenforce 0' e ha funzionato. – ehsanul

+7

È inoltre possibile eseguire setsebool -P httpd_can_network_connect 1 – garg

Problemi correlati