Saludos lista.

Estoy pasando un aplicación web sencilla que está en Django 1.2.7, la base de datos es PostgreSQL 9.0.6. La versión del Apache/2.2.15 (Unix) DAV/2 PHP/5.3.3 mod_python/3.3.1 Python/2.6.6 mod_ssl/2.2.15 OpenSSL/1.0.0-fips mod_wsgi/3.2 mod_perl/2.0.4 Perl/v5.10.1

En la misma máquina se encuentra el Servidor Web y el servidor de base de datos. Sin embargo cuando intento conectarme a la aplicación me marca un error de conexion.

could not connect to server: Permission denied
        Is the server running on host "localhost" and accepting
        TCP/IP connections on port 5432?


Sin embargo utilizando el cliente psql, puedo conectarme sin problemas, de igual forma puedo accesar a la aplicación levantando el servidor de desarrollo con la instrucción
./manage.py runserver

lo que me hace pensar que tal vez estoy omitiendo alguna configuración en mis archivos, a continuación les muestro las secciones configuradas en cada uno de los archivos. O alguna otra parte que no haya considerado.

La configuración de mi archivo de settings del proyecto es el siguiente para la conexión:


DATABASES = {
    'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'. 'NAME': 'almacen_facturas', # Or path to database file if using sqlite3.
        'USER': 'dba',                      # Not used with sqlite3.
        'PASSWORD': '[pass]',                  # Not used with sqlite3.
'HOST': 'localhost', # Set to empty string for localhost. Not used with sqlite3. 'PORT': '5432', # Set to empty string for default. Not used with sqlite3.
    }
}

Se que también hay que configurar el acceso por parte del servidor de postgresql ( archivo pg_hba.conf y postgresql.conf )

# TYPE  DATABASE        USER            CIDR-ADDRESS            METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     trust
# IPv4 local connections:
host    almacen_facturas dba            10.10.50.171/24         trust
host    all             all             127.0.0.1/32            trust
host    all             dba             10.10.50.0/24           md5

y

listen_addresses = '*'

Esta es mi configuración del archivo WSGI:

import os
import sys

sys.path.append('/var/www/django/visor/')
sys.path.append('/var/www/django/visor/facturas/')

os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'

import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()

y por último esta es la sección correspondiente al archivo de configuración del apache

<Location "/facturas/">
        SetHandler python-program
        PythonHandler django.core.handlers.modpython
        SetEnv PYTHON_EGG_CACHE "/var/cache/www/pythoneggs"
        SetEnv DJANGO_SETTINGS_MODULE settings
        PythonDebug Off
        PythonPath "['/var/www/django/visor','/var/www'] + sys.path"
</Location>


Espero y puedan ayudarme.
_______________________________________________
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/

Responder a