EDIT: Я только понял, что этот вопрос лучше подходит для ServerFault. Вместо того, чтобы копировать его, модератор, пожалуйста, переместите его? Благодарю.
Я проверил php-info, и расширение Postgresql существует ( pg_connect()
не определено undefined). Я также могу подключиться к postgresql, используя psql
на localhost (я соответствующим образом отредактировал файл pg_hba.conf). Вот код, который не работает:
<?php $dbconn = pg_connect("host=localhost port=5432 dbname=mydb user=myuser password=mypass") or die('Could not connect: ' . pg_last_error()); ?>
Этот код просто приводит к тому, что в браузере отображается сообщение «Не удалось подключиться:».
Я проверил свой журнал apache, и вот соответствующее сообщение об ошибке:
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 "localhost" and accepting\n\tTCP/IP connections on port 5432?
Как я могу исправить / отладить это?
Редактировать: я на Centos 5.4 btw.
не удалось подключиться к серверу: разрешение отклонено
Редактировать: я на Centos 5.4 btw.
Проверьте /var/log/audit/audit.log
. Скорее всего, вы попадаете в правило SELinux.