Estoy tratando de implementar una API basada en el marco de descanso de Django usando mod_wsgi y WAMP. Cuando creé un nuevo proyecto de Django usando 'django-admin startproject Predictor' y lo implementé en WAMP, funcionó bien, ya que puedo ver la ventana predeterminada de Django.
Ahora creé una aplicación en el proyecto usando 'python manage.py startapp Predictor' Creé una API que acepta llamadas GET y la probé usando 'python manage.py runserver' y funcionó bien. Ahora inicié el servicio WAMP nuevamente e intenté ir a 'localhost: 8000' y sigue cargándose. Y tan pronto como detengo el servicio WAMP, falla diciendo No se puede conectar. No estoy seguro de lo que está pasando. ¿Puede alguien ayudarme qué está mal que estoy haciendo? Para su información, estoy en Windows y he creado un entorno virtual para mi proyecto Django. Así es como se ven mis archivos .conf y wsgi
wsgi_windows.py
activate_this = 'C:/Users/DELL/Envs/predenv/Scripts/activate_this.py' # execfile(activate_this, dict(__file__=activate_this)) exec(open(activate_this).read(),dict(__file__=activate_this)) import os import sys import site # Add the site-packages of the chosen virtualenv to work with site.addsitedir('C:/Users/DELL/Envs/predenv/Lib/site-packages') # Add the app's directory to the PYTHONPATH sys.path.append('C:/Users/DELL/Envs/predenv') sys.path.append('C:/Users/DELL/Envs/predenv/Predictor') os.environ['DJANGO_SETTINGS_MODULE'] = 'Predictor.settings' os.environ.setdefault("DJANGO_SETTINGS_MODULE", "Predictor.settings") from django.core.wsgi import get_wsgi_application application = get_wsgi_application()httpd.conf
Listen localhost:8000 Listen [::0]:80 ServerName localhost:8000 LoadFile "c:/python376/python37.dll" LoadModule wsgi_module "c:/python376/lib/site-packages/mod_wsgi/server/mod_wsgi.cp37-win_amd64.pyd" WSGIPythonHome "c:/python376" WSGIPythonPath "C:/Users/DELL/Envs/predenv/Predictor"httpd-vhosts.conf
WSGIPythonPath "C:/Users/DELL/Envs/predenv/Predictor" <VirtualHost *:80> WSGIPassAuthorization On ErrorLog "logs/predictor.error.log" CustomLog "logs/predictor.access.log" combined DocumentRoot "C:/Users/DELL/Envs/predenv/Predictor" WSGIScriptAlias / "C:\Users\DELL\Envs\predenv\Predictor\Predictor\wsgi_windows.py" <Directory "C:\Users\DELL\Envs\predenv\Predictor\Predictor"> <Files wsgi_windows.py> Require all granted </Files> </Directory> </VirtualHost>El problema era que no podía 'importar pandas' en mis vistas.py
Para resolver esto, tengo que agregar esta línea en mi archivo apache 'httpd-vhosts.conf'
WSGIApplicationGroup %{GLOBAL}