Quijost

Por favor ingresa o regístrate.

Ingresar con nombre de usuario, contraseña y duración de la sesión
Búsqueda Avanzada  

Noticias:

Deja tu post en el foro para hacer algun tipo de consulta

Autor Tema: Error al desplegar sitio  (Leído 7325 veces)

0 Usuarios y 1 Visitante están viendo este tema.

gdc0

  • Usuario nuevo
  • *
  • Karma: +0/-0
  • Desconectado Desconectado
  • Mensajes: 17
    • Ver Perfil
Error al desplegar sitio
« en: Enero 24, 2013, 01:57:17 am »

Buenas noches!
No soy capaz de echar a andar mi proyecto.
Creo que he mirado el foto entero varias veces y sigo igual...

El esquema de mi proyecto es:
public_html
   .htaccess
   DIVIDEL
       app_DIVIDEL (aplicación)
       DIVIDEL (proyecto)
          wsgi.py

Contenidos:
.htaccess
SetHandler wsgi-script

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} !(django.wsgiwsgi.py)
RewriteRule ^(.*)$ django.wsgiwsgi.py/$1 [L]


wsgi.py

import os, sys

 sys.path.append("/home/dividel/public_html/")

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "DIVIDEL.settings")

from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()

¿Podéis echarme una mano?

Gracias.

Un saludo.
« última modificación: Enero 24, 2013, 13:52:57 pm por gdc0 »
En línea

gdc0

  • Usuario nuevo
  • *
  • Karma: +0/-0
  • Desconectado Desconectado
  • Mensajes: 17
    • Ver Perfil
Re:Error al desplegar sitio
« Respuesta #1 en: Enero 24, 2013, 13:54:29 pm »

Buenas noches!
No soy capaz de echar a andar mi proyecto.
Creo que he mirado el foto entero varias veces y sigo igual...

El esquema de mi proyecto es:
public_html
   .htaccess
   DIVIDEL
       app_DIVIDEL (aplicación)
       DIVIDEL (proyecto)
          wsgi.py

Contenidos:
.htaccess
SetHandler wsgi-script

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} !(django.wsgiwsgi.py)
RewriteRule ^(.*)$ django.wsgiwsgi.py/$1 [L]


wsgi.py

import os, sys

 sys.path.append("/home/dividel/public_html/")

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "DIVIDEL.settings")

from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()

¿Podéis echarme una mano?

Gracias.

Un saludo.

¿Alguien puede ayudarme?

Gracias.
En línea

shakaran

  • Soporte
  • Administrator
  • Usuario profesional
  • *****
  • Karma: +12/-0
  • Desconectado Desconectado
  • Sexo: Masculino
  • Mensajes: 485
  • Un buen soporte lo es todo
    • Ver Perfil
    • Shakaran
Re:Error al desplegar sitio
« Respuesta #2 en: Enero 24, 2013, 17:55:58 pm »

Hola gdc0,

Te faltan por definir algunas directivas.

Debes añadir al sys.path las carpetas que cuelgan como proyectos, en tu caso:

Código: [Seleccionar]
sys.path.append('/home/dividel/public_html/DIVIDEL/')
sys.path.append('/home/dividel/public_html/DIVIDEL/DIVIDEL')

También seria necesario que definas el PYTHON_EGG_CACHE

Código: [Seleccionar]
os.environ['PYTHON_EGG_CACHE'] = '/home/dividel/tmp/trac-eggs'
También ayudaría a conocer si detallas que error tienes al desplegar al sitio, con referenciar sólo que tienes un error nos falta contexto para ayudarte.
En línea
Ángel Guzmán Maeso
Quijost Founder - Backend Engineer & Main support

gdc0

  • Usuario nuevo
  • *
  • Karma: +0/-0
  • Desconectado Desconectado
  • Mensajes: 17
    • Ver Perfil
Re:Error al desplegar sitio
« Respuesta #3 en: Enero 24, 2013, 21:23:05 pm »

Buenas noches

He realizado los cambios indicados y sigo obteniendo el mismo error: documento no encontrado.

No sé si debería añadir más información.

Gracias.

Un saludo.
En línea

shakaran

  • Soporte
  • Administrator
  • Usuario profesional
  • *****
  • Karma: +12/-0
  • Desconectado Desconectado
  • Sexo: Masculino
  • Mensajes: 485
  • Un buen soporte lo es todo
    • Ver Perfil
    • Shakaran
Re:Error al desplegar sitio
« Respuesta #4 en: Enero 25, 2013, 02:04:47 am »

En el .htaccess tienes definido un archivo wsgi.py con una regla que dice que toda petición que se haga (excepto para el archivo wsgi.py) pase como parámetro a ese archivo.

Pero creo que el problema es que no tienes ningún archivo wsgi.py en public_html, sino en directorios más anidados, de ahí que te lance un 404 a cualquier URL que cargas ya que se esta aplicando la regla de mod_rewrite del .htaccess para un archivo inexistente.
En línea
Ángel Guzmán Maeso
Quijost Founder - Backend Engineer & Main support

gdc0

  • Usuario nuevo
  • *
  • Karma: +0/-0
  • Desconectado Desconectado
  • Mensajes: 17
    • Ver Perfil
Re:Error al desplegar sitio
« Respuesta #5 en: Enero 25, 2013, 10:46:11 am »

Buenos días

He colocado el fichero wsgi.py debajo de public_html y ahora obtengo un error 500.

Muchas gracias por toda la ayuda que me estáis proporcionando.

Un saludo.
En línea

shakaran

  • Soporte
  • Administrator
  • Usuario profesional
  • *****
  • Karma: +12/-0
  • Desconectado Desconectado
  • Sexo: Masculino
  • Mensajes: 485
  • Un buen soporte lo es todo
    • Ver Perfil
    • Shakaran
Re:Error al desplegar sitio
« Respuesta #6 en: Enero 25, 2013, 10:53:41 am »

El error 500 que te da tiene como traza (si capturas los errores):

Código: [Seleccionar]
ImportError: Could not import settings 'DIVIDEL.settings' (Is it on sys.path?): No module named settings
Esto se debe a que tu settings.py esta en un directorio inferior, quizás te funcione cambiar en el wsgi.py:

Código: [Seleccionar]
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "DIVIDEL.settings")
Por el siguiente:

Código: [Seleccionar]
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "DIVIDEL.DIVIDEL.settings")
En línea
Ángel Guzmán Maeso
Quijost Founder - Backend Engineer & Main support

gdc0

  • Usuario nuevo
  • *
  • Karma: +0/-0
  • Desconectado Desconectado
  • Mensajes: 17
    • Ver Perfil
Re:Error al desplegar sitio
« Respuesta #7 en: Enero 25, 2013, 12:42:06 pm »

Nada, obtengo el mismo error 500.

Además, he estado revisando el fichero settings.py que se encuentra en public_html/DIVIDEL/DIVIDEL donde he colocado lo siguiente para que pueda grabar los errores, pero no me graba nada.

LOGGING =
{
    'version': 1,
    'disable_existing_loggers': True,
    'filters':{'require_debug_false': {'()': 'django.utils.log.RequireDebugFalse'}},
    'handlers':
    {
        'mail_admins':{'level': 'ERROR', 'filters': ['require_debug_false'], 'class': 'django.utils.log.AdminEmailHandler'},
        'file':{'level':'ERROR', 'class':'logging.FileHandler', 'filename':'/home/dividel/public_html/DIVIDEL/error.log'}
    },
    'loggers':{'django.request':{'handlers': ['mail_admins','file'], 'level': 'ERROR', 'propagate': True,},}
}

El fichero error.log tiene los permisos 664 y DEBUG = True.

Gracias.

Un saludo.
En línea

shakaran

  • Soporte
  • Administrator
  • Usuario profesional
  • *****
  • Karma: +12/-0
  • Desconectado Desconectado
  • Sexo: Masculino
  • Mensajes: 485
  • Un buen soporte lo es todo
    • Ver Perfil
    • Shakaran
Re:Error al desplegar sitio
« Respuesta #8 en: Enero 25, 2013, 13:11:46 pm »

Editando tu fichero wsgi.py te he cambiado lo siguiente:

Código: [Seleccionar]
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "DIVIDEL.settings")
Por:

Código: [Seleccionar]
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "settings")
Puesto que las rutas correctas ya estan en el path:

Código: [Seleccionar]
sys.path.append('/home/dividel/public_html/DIVIDEL/')
sys.path.append('/home/dividel/public_html/DIVIDEL/DIVIDEL')

Se debe poner solo settings.

Por otro lado, en el settings.py tienes un Syntax error, porque no se puede separar un diccionario cuando se asigna, es decir cambiar el:
Código: [Seleccionar]
LOGGING =
{

Por:

Código: [Seleccionar]
LOGGING = {
Despues, el archivo de error.log no deberia estar en un directorio de public_html, ya que necesita permisos 666 (ya que wsgi escribe y lee como "world" el archivo)

Luego es necesario:

Código: [Seleccionar]
chmod 666 /home/dividel/public_html/DIVIDEL/error.log
Tras arreglar eso, el error 500 que se produce ahora es porque no te encuentra el urls.py, luego tendras que cambiar lo necesario:

Código: [Seleccionar]
[Fri Jan 25 13:06:19 2013]  mod_wsgi (pid=15403): Exception occurred processing WSGI script '/home/dividel/public_html/wsgi.py'.
[Fri Jan 25 13:06:19 2013]  Traceback (most recent call last):
[Fri Jan 25 13:06:19 2013]    File "/usr/local/lib/python2.7/site-packages/Django-1.4.3-py2.7.egg/django/core/handlers/wsgi.py", line 241, in __call__
[Fri Jan 25 13:06:19 2013]      response = self.get_response(request)
[Fri Jan 25 13:06:19 2013]    File "/usr/local/lib/python2.7/site-packages/Django-1.4.3-py2.7.egg/django/core/handlers/base.py", line 179, in get_response
[Fri Jan 25 13:06:19 2013]      response = self.handle_uncaught_exception(request, resolver, sys.exc_info())
[Fri Jan 25 13:06:19 2013]    File "/usr/local/lib/python2.7/site-packages/Django-1.4.3-py2.7.egg/django/core/handlers/base.py", line 224, in handle_uncaught_exception
[Fri Jan 25 13:06:19 2013]      if resolver.urlconf_module is None:
[Fri Jan 25 13:06:19 2013]    File "/usr/local/lib/python2.7/site-packages/Django-1.4.3-py2.7.egg/django/core/urlresolvers.py", line 323, in urlconf_module
[Fri Jan 25 13:06:19 2013]      self._urlconf_module = import_module(self.urlconf_name)
[Fri Jan 25 13:06:19 2013]    File "/usr/local/lib/python2.7/site-packages/Django-1.4.3-py2.7.egg/django/utils/importlib.py", line 35, in import_module
[Fri Jan 25 13:06:19 2013]      __import__(name)
[Fri Jan 25 13:06:19 2013]  ImportError: No module named urls
En línea
Ángel Guzmán Maeso
Quijost Founder - Backend Engineer & Main support

gdc0

  • Usuario nuevo
  • *
  • Karma: +0/-0
  • Desconectado Desconectado
  • Mensajes: 17
    • Ver Perfil
Re:Error al desplegar sitio
« Respuesta #9 en: Enero 25, 2013, 14:32:37 pm »

Viendo los módulos que tenéis instalados aparece Sqlite versión 2.6.3, pero en los errores que obtengo aparece sqlite3 y en el settings tengo

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

¿Podría haber un problema con las versiones?

Gracias.

Un saludo.
En línea

shakaran

  • Soporte
  • Administrator
  • Usuario profesional
  • *****
  • Karma: +12/-0
  • Desconectado Desconectado
  • Sexo: Masculino
  • Mensajes: 485
  • Un buen soporte lo es todo
    • Ver Perfil
    • Shakaran
Re:Error al desplegar sitio
« Respuesta #10 en: Enero 26, 2013, 03:30:41 am »

Ya esta instalada una versión mas reciente de sqlite3 (3.7.15) y el módulo python sqlite3(2.6.0) en lugar de pysqlite2 (2.6.3).

Ahora debería funcionarte sin problemas de sqlite, puedes comprobarlo por ssh con:
 
Código: [Seleccionar]
$ sqlite3 --version; python -c "import sqlite3; print sqlite3.version"
3.7.15.2 2013-01-09 11:53:05 c0e09560d26f0a6456be9dd3447f5311eb4f238f
2.6.0

Puedes verlo funcionando en http://quijost.com/sandbox/index.py
En línea
Ángel Guzmán Maeso
Quijost Founder - Backend Engineer & Main support

gdc0

  • Usuario nuevo
  • *
  • Karma: +0/-0
  • Desconectado Desconectado
  • Mensajes: 17
    • Ver Perfil
Re:Error al desplegar sitio
« Respuesta #11 en: Enero 26, 2013, 12:51:30 pm »

Buenos días Shakaran

Siento que estoy acabando con tu paciencia...

Viendo el fichero de errores observo lo siguiente:
ExtractionError: Can't extract file(s) to egg cache

The following error occurred while trying to extract file(s) to the Python egg
cache:

  [Errno 17] El fichero ya existe: '/home/dividel/tmp/trac-eggs'

The Python egg cache directory is currently set to:

  /home/dividel/tmp/trac-eggs/

Perhaps your account does not have write access to this directory?  You can
change the cache directory by setting the PYTHON_EGG_CACHE environment
variable to point to an accessible directory.

Además, el fichero tiene permisos 666.

No entiendo estos mensajes de error, parecen contradictorios.

¿Podrías echarme una mano?

Muchas gracias.

Un saludo.
En línea

shakaran

  • Soporte
  • Administrator
  • Usuario profesional
  • *****
  • Karma: +12/-0
  • Desconectado Desconectado
  • Sexo: Masculino
  • Mensajes: 485
  • Un buen soporte lo es todo
    • Ver Perfil
    • Shakaran
Re:Error al desplegar sitio
« Respuesta #12 en: Enero 27, 2013, 01:51:10 am »

Parece que no es ese el error que tienes ahora (has cambiado código), el que aparece es el siguiente:

Código: [Seleccionar]
[Sat Jan 26 18:47:36 2013] [info]  mod_wsgi (pid=6053, process='', application='dividel.quijost.com|/wsgi.py'): Loading WSGI script '/home/dividel/public_html/wsgi.py'.
[Sat Jan 26 18:47:36 2013] [error]  mod_wsgi (pid=6053): Target WSGI script '/home/dividel/public_html/wsgi.py' cannot be loaded as Python module.
[Sat Jan 26 18:47:36 2013] [error]  mod_wsgi (pid=6053): Exception occurred processing WSGI script '/home/dividel/public_html/wsgi.py'.
[Sat Jan 26 18:47:36 2013] [error]  Traceback (most recent call last):
[Sat Jan 26 18:47:36 2013] [error]    File "/home/dividel/public_html/wsgi.py", line 23, in <module>
[Sat Jan 26 18:47:36 2013] [error]      os.environ.setdefault['PYTHON_EGG_CACHE'] = '/home/dividel/www/.python-eggs'
[Sat Jan 26 18:47:36 2013] [error]  TypeError: 'instancemethod' object does not support item assignment

Probablemente porque no puedes hacer de esa forma la asignación al environ en python y de ahi el TypeError.
En línea
Ángel Guzmán Maeso
Quijost Founder - Backend Engineer & Main support

gdc0

  • Usuario nuevo
  • *
  • Karma: +0/-0
  • Desconectado Desconectado
  • Mensajes: 17
    • Ver Perfil
Re:Error al desplegar sitio
« Respuesta #13 en: Enero 28, 2013, 12:28:29 pm »

Buenos días Shakaran

¿Podrías mandarme el log de hace unos minutos?

No sé porque pero, de repente, el envío de errores al correo y su grabación en un fichero de errores ha dejado de funcionar.

Muchas gracias.

Un saludo.

P.D.: Estoy mirando posibles errores en el paquete distribute-0.6.34 y dentro de éste, en la función get_cache_path. Cuando tenga más información podré decirte algo.
En línea

shakaran

  • Soporte
  • Administrator
  • Usuario profesional
  • *****
  • Karma: +12/-0
  • Desconectado Desconectado
  • Sexo: Masculino
  • Mensajes: 485
  • Un buen soporte lo es todo
    • Ver Perfil
    • Shakaran
Re:Error al desplegar sitio
« Respuesta #14 en: Enero 28, 2013, 12:56:56 pm »

La traza que aparece es la siguiente (te falta definir el template para el error 500 en Django):

Código: [Seleccionar]
[Mon Jan 28 12:53:10 2013]  Traceback (most recent call last):, referer: http://dividel.quijost.com/
[Mon Jan 28 12:53:10 2013]    File "/usr/local/lib/python2.7/site-packages/Django-1.4.3-py2.7.egg/django/core/handlers/wsgi.py", line 241, in __call__, referer: http://dividel.quijost.com/
[Mon Jan 28 12:53:10 2013]      response = self.get_response(request), referer: http://dividel.quijost.com/
[Mon Jan 28 12:53:10 2013]    File "/usr/local/lib/python2.7/site-packages/Django-1.4.3-py2.7.egg/django/core/handlers/base.py", line 153, in get_response, referer: http://dividel.quijost.com/
[Mon Jan 28 12:53:10 2013]      response = self.handle_uncaught_exception(request, resolver, sys.exc_info()), referer: http://dividel.quijost.com/
[Mon Jan 28 12:53:10 2013]    File "/usr/local/lib/python2.7/site-packages/Django-1.4.3-py2.7.egg/django/core/handlers/base.py", line 228, in handle_uncaught_exception, referer: http://dividel.quijost.com/
[Mon Jan 28 12:53:10 2013]      return callback(request, **param_dict), referer: http://dividel.quijost.com/
[Mon Jan 28 12:53:10 2013]    File "/usr/local/lib/python2.7/site-packages/Django-1.4.3-py2.7.egg/django/utils/decorators.py", line 91, in _wrapped_view, referer: http://dividel.quijost.com/
[Mon Jan 28 12:53:10 2013]      response = view_func(request, *args, **kwargs), referer: http://dividel.quijost.com/
[Mon Jan 28 12:53:10 2013]    File "/usr/local/lib/python2.7/site-packages/Django-1.4.3-py2.7.egg/django/views/defaults.py", line 32, in server_error, referer: http://dividel.quijost.com/
[Mon Jan 28 12:53:10 2013]      t = loader.get_template(template_name) # You need to create a 500.html template., referer: http://dividel.quijost.com/
[Mon Jan 28 12:53:10 2013]    File "/usr/local/lib/python2.7/site-packages/Django-1.4.3-py2.7.egg/django/template/loader.py", line 145, in get_template, referer: http://dividel.quijost.com/
[Mon Jan 28 12:53:10 2013]      template, origin = find_template(template_name), referer: http://dividel.quijost.com/
[Mon Jan 28 12:53:10 2013]    File "/usr/local/lib/python2.7/site-packages/Django-1.4.3-py2.7.egg/django/template/loader.py", line 138, in find_template, referer: http://dividel.quijost.com/
[Mon Jan 28 12:53:10 2013]      raise TemplateDoesNotExist(name), referer: http://dividel.quijost.com/
[Mon Jan 28 12:53:10 2013]  TemplateDoesNotExist: 500.html, referer: http://dividel.quijost.com/

Lo que me parece extraño es lo que comentas de distribute, no se que tiene que ver ya que no tendrías permisos root para instalaciones de paquetes (a menos que uses virtualenv).

Sobre que no te lleguen el envio de correos, puede ser porque cPanel tiene impuesto un límite de 150 email por usuario a la hora, si lo has sobrepasado en una hora podrás enviar de nuevo.
En línea
Ángel Guzmán Maeso
Quijost Founder - Backend Engineer & Main support
 

Página generada en 0.091 segundos con 24 consultas.