Я пытаюсь запустить мой проект Django на рабочем сервере.
Я настраиваю среду с помощью pip, поэтому она идентична среде разработки, где все работает нормально.Разница лишь в том, что я не использую virtualenv на производстве, потому что этот проект - единственный, который будет запущен на производстве.Также на производстве имеется обратный прокси-сервер Nginx для обслуживания статического содержимого, который передает динамические запросы в Apache2.
Файл wsgi Apache выглядит следующим образом:
import sys, os
sys.path.append('/home/project/src')
os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
Когда я получаю доступ к серверу, Я получаю ошибку импорта:
ImproperlyConfigured: Error importing middleware middleware: "cannot import name UserProfile"
, которая ссылается на файл middleware.py в папке src /, на который ссылаются настройки.Но я могу импортировать и промежуточное ПО, и класс UserProfile из командной строки оболочки ./manage.py.
Кажется, что проблема с путями в файле wsgi, но я не вижу, что именно.Структура каталогов:
/home/project
/home/project/src (which contains the settings.py, middleware.py and app folders)
/home/apache/apache.wsgi
Любая помощь приветствуется.
Спасибо, oMat