Ho CentOS 7 in esecuzione in VirtualBox su OSX. Apache, PHP 5.4 e PostgreSQL 9.2 sono tutti in esecuzione. Ma, quando il mio (semplice) script php tenta di connettersi a PostgreSQL, non funziona:
Avviso: pg_connect (): imansible connettersi al server PostgreSQL: imansible connettersi al server: authorization negata Il server è in esecuzione sull'host "127.0.0.1" e accetta le connessioni TCP / IP sulla port 5432? in /var/www/html/pg.php alla row 7
controlli:
ospita tutto il trust 0.0.0.0/0
Ma php non riesce a connettersi …. Questo è il mio script:
<?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'); ?>
Funzionano le connessioni interne (psql), anche le connessioni esterne funzionano (pgAdmin su un mio laptop), ma la connessione php non funziona …
Cosa sta andando storto? Cosa mi manca?
Probabilmente SELinux sta bloccando la connessione al tuo database.
Assicurati di impostare il valore boolean corretto per consentire alla tua applicazione web di comunicare con il database:
sudo setsebool -P httpd_can_network_connect_db 1