Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

733
Visualizações
500 error interno del servidor mod_wsgi apache "importerror: ningún módulo llamado 'django'

Problemas al ejecutar django y apache2/mod_wsgi. Sigo recibiendo 500 Error interno del servidor. He probado muchas combinaciones de correcciones a las que ninguna ha funcionado. Cualquier ayuda es muy apreciada. Esta es mi configuración:

 Ubuntu 16.04 django 1.10.5 apache 2.4.18 python 3.4(virtualenv) libapache2-mod-wsgi-py3

Mi estructura de carpetas es:

 /home/user/site/venv (virtualenv folder) bin include lib /home/user/site/mysite |- manage.py static mysite |__init__.py |settings.py |urls.py |wsgi.py

sitio.conf

 <VirtualHost *:80> WSGIDaemonProcess myproject python-home=/home/user/site/venv python-path=/home/user/site/mysite WSGIProcessGroup myproject WSGIScriptAlias / /home/user/site/mysite/mysite/wsgi.py Alias /static /home/user/site/mysite/static <Directory /home/user/site/mysite/static> Require all granted </Directory> <Directory /home/user/site/mysite/mysite> <Files wsgi.py> Require all granted </Files> </Directory> </VirtualHost>

wsgi.py

 import os from django.core.wsgi import get_wsgi_application os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite.settings") application = get_wsgi_application()

apache2/error.log

 [mpm_event:notice] [pid 8908:tid 140560009164672] AH00491: caught SIGTERM, shutting down [wsgi:warn] [pid 9047:tid 139761898837888] mod_wsgi: Compiled for Python/3.5.1+. [wsgi:warn] [pid 9047:tid 139761898837888] mod_wsgi: Runtime using Python/3.5.2. [mpm_event:notice] [pid 9047:tid 139761898837888] AH00489: Apache/2.4.18 (Ubuntu) mod_wsgi/4.3.0 Python/3.5.2 configured -- resuming normal operations [core:notice] [pid 9047:tid 139761898837888] AH00094: Command line: '/usr/sbin/apache2' [wsgi:error] [pid 9049:tid 139761776183040] mod_wsgi (pid=9049): Target WSGI script '/home/user/site/mysite/mysite/wsgi.py' cannot be loaded as Python module. [wsgi:error] [pid 9049:tid 139761776183040] mod_wsgi (pid=9049): Exception occurred processing WSGI script '/home/user/site/mysite/mysite/wsgi.py'. [wsgi:error] [pid 9049:tid 139761776183040] Traceback (most recent call last): [wsgi:error] [pid 9049:tid 139761776183040] File "/home/user/site/mysite/mysite/wsgi.py", line 12, in <module> [wsgi:error] [pid 9049:tid 139761776183040] from django.core.wsgi import get_wsgi_application [wsgi:error] [pid 9049:tid 139761776183040] ImportError: No module named 'django'

He dado los permisos a las carpetas a continuación:

 sudo chown -R www-data:www-data /home/user/site/venv sudo chown -R www-data:www-data /home/user/site/mysite

Cualquier ayuda o crítica me encantaría gracias de antemano.

over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

Así que después de un intenso cabezazo contra la pared. Resulta que necesitaba compilar mi propio mod_wsgi para la versión de python que estaba usando. Estaba usando el repositorio estándar para ubuntu libapache2-mod-wsgi-py3 que está compilado para usar con python3.5.2 como se muestra en mi error.log.

Fui aquí para obtener la versión más actualizada: mod_wsgi_releases

asegúrese de usar el siguiente comando al instalar mod_wsgi

.configure --with-python=/your/virtualenv/bin/python(your python_verion here)

over 4 years ago · Santiago Trujillo Relatório

0

Intenta usar algo como esto. Solo para confirmar, ¿ myproject es el grupo de usuarios?

 WSGISocketPrefix /var/run/wsgi WSGIPythonPath /home/user/site/venv/lib/python2.7/site-packages WSGIDaemonProcess ec2-user processes=1 WSGIProcessGroup ec2-user WSGIScriptAlias / /home/user/site/mysite/mysite/wsgi.py
over 4 years ago · Santiago Trujillo Relatório

0

mod_wsgi es la causa de este error porque el módulo mod_wsgi en el código C se vincula a la biblioteca de Python. Por lo tanto, la versión de Python para la que se compila está integrada en el módulo. No solo ejecuta el programa python. Esto significa que debe compilarse para la versión de Python que desea usar. No puede forzarlo a través de un entorno virtual para usar una versión de Python diferente [fuente] .

Por lo tanto, debe desinstalar el módulo mod_wsgi (probablemente el sistema operativo empaquetado) e instalar mod_wsgi usted mismo desde el código fuente, compilándolo con la versión de Python que desea usar.

Siga los pasos a continuación para corregir el error:

  1. desinstalar mod_wsgi [fuente] :
 sudo rm /usr/lib/apache2/modules/mod_wsgi.so
  1. hacer compilaciones personalizadas de Python y mod_wsgi nosotros mismos [fuente] :
 ## A.requirements: sudo apt update sudo apt install build-essential checkinstall sudo apt install libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev sudo apt install libffi-dev ## B.build mod_wsgi: apt install apache2 apache2-dev wget https://github.com/GrahamDumpleton/mod_wsgi/archive/4.7.1.tar.gz tar xvfz 4.7.1.tar.gz cd mod_wsgi-4.7.1 ./configure --with-python=[your python path] ## for example: ./configure --with-python=/usr/bin/python3.7 sudo make sudo make install

Puede usar which python3.7 para encontrar la ruta del archivo de Python

  1. recarga apach2:
 sudo systemctl reload apache2
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda