pg_connect(): No se puede conectar al servidor PostgreSQL

pg_connect(): No se puede conectar al servidor PostgreSQL

He leído varios artículos que detallan esta solución para este problema exacto. He probado todo tipo de variaciones para editar el archivo pg_hba.conf pero no tuve suerte. Todavía aparece el siguiente error en mi registro de Apache cuando intento ejecutar el programa php que estoy intentando usar.

Jue 28 de marzo 08:20:21 2013] [error] [cliente 172.16.1.64] Advertencia de PHP: pg_connect(): >No se puede conectar al servidor PostgreSQL: FATAL: La autenticación de pares falló para el usuario

Este es mi archivo pg_hba.conf actual:

Imgur

No sé qué más probar, ¡cualquier ayuda será muy apreciada!

¡Gracias!

Respuesta1

Considere la primera regla en pg_hba.conf:

local todos todos pares

Significa que para todas las conexiones locales, el usuario de Unix debe ser el mismo que el usuario de base de datos. Obviamente este no es el caso para tu código php, de ahí el errorLa autenticación de pares falló para el usuario....

La segunda regla permitiría que el script se conectara, pero se ignora porque la primera regla tiene prioridad:

local todos todos confian

Esta regla significa que se permiten todas las conexiones locales sin requerir contraseña y sin verificar ninguna identidad.

Si le parece bien, simplemente elimine la primera regla y vuelva a cargar el servicio postgresql para que el cambio surta efecto.

Las otras reglas no deberían ser relevantes para el problema ya que están relacionadas con conexiones TCP y, según el mensaje de error, ese no es el método utilizado por su secuencia de comandos, sino que intenta conectarse a través del socket de dominio predeterminado de Unix.

información relacionada