Получение ошибки ModuleNotFoundError: Нет модуля с именем 'django' при развертывании Django на сервере uWSGI, в то время как сервер uWSGI работает под управлением Cygwin на Windows OS
Я установил Cygwin на Windows 10 и установил следующие пакеты
- gcc-core (версия 11.0.4-1, под категорией Devel )
- gcc-g++ (версия 11.0.4-1, в категории Devel )
- libintl-devel (версия 0.22.4-1, в категории Text )
- gettext-devel (версия 0.22.4-1, под категорией Text )
- python3-devel (версия 3.9.16-1, в категории Python )
- python38-devel (версия 3.9.16-1, под категорией Python )
И я установил uWSGI версии 2.0.25.1 в Cygwin, чтобы развернуть приложение django.
Файл wsgi.py приложения Django имеет вид
import os
from django.core.wsgi import get_wsgi_application
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'PrateekGupta.settings')
application = get_wsgi_application()
Файл конфигурации для uWSGI выглядит так
[uwsgi]
chdir = P:/Portfolio/Django
module = PrateekGupta.wsgi:application
pythonpath = /home/PrateekGupta/virtual_environment/Scripts/python
master = True
pidfile = /tmp/project-master.pid
vacuum = True
max-requests = 5000
daemonize = /var/log/Portfolio.log
http-socket = 127.0.0.1:8000
buffer-size = 65536
Я активировал виртуальную среду и установил в нее python и django. Ответ
pip list
команда является
Package Version
----------------- -------
asgiref 3.8.1
Django 5.0.6
pillow 10.3.0
pip 21.3.1
PyJWT 2.8.0
setuptools 58.4.0
sqlparse 0.5.0
typing_extensions 4.11.0
tzdata 2024.1
wheel 0.37.0
Но все равно, когда я запускаю uwsgi сервер с командой
uwsgi --ini portfolio-uwsgi.ini
В файле журнала я получаю ошибку
Traceback (most recent call last):
File "/cygdrive/p/Portfolio/Django/./PrateekGupta/wsgi.py", line 12, in <module>
from django.core.wsgi import get_wsgi_application
ModuleNotFoundError: No module named 'django'
В файле конфигурации uWSGI я также добавил pythonpath для python виртуальной среды, но все равно получаю ту же ошибку. Кроме того, я выполнил ту же конфигурацию на экземпляре EC2, и она работает абсолютно нормально, но не работает при запуске под Windows через Cygwin.