Развертывание Django службы перезапуска с использованием WAMP и mod_wsgi - PullRequest
1 голос
/ 01 апреля 2020

Я пытаюсь развернуть API, построенный на Django rest-framework, используя mod_wsgi и WAMP. Когда я создал новый проект Django с помощью django -admin startproject Predictor 'и развернул его на WAMP, он работал нормально, так как я вижу окно Django по умолчанию.

Теперь я создал Приложение в проекте с использованием python manage.py startapp Predictor 'Я создал API, который принимает вызов GET, и протестировал его с помощью python manage.py runserver', и он работал нормально. Теперь я снова запустил сервис WAMP и попытался go на localhost: 8000, он продолжает загружаться. И как только я останавливаю сервис WAMP, он выдает сообщение «Невозможно подключиться». Не уверен, что происходит. Может кто-нибудь помочь, что я делаю не так? К вашему сведению, я нахожусь на windows, и я создал и виртуальную среду для моего Django проекта. Вот так выглядят мои файлы .conf и 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>

1 Ответ

0 голосов
/ 05 апреля 2020

Проблема заключалась в том, что не удалось «импортировать pandas» в мои views.py

. Чтобы решить эту проблему, я должен добавить эту строку в мой файл apache 'httpd-vhosts.conf'

WSGIApplicationGroup %{GLOBAL}
...