Как развернуть приложение Django на Ubuntu с помощью Apache2 и mod-wsgi-pytho3
Я пытаюсь развернуть свое приложение Django на AWS, следуя этой статье Ссылка на статью.
Я сделал почти то же самое, но получил эту ошибку
[Sun Nov 13 16:02:45.432532 2022] [wsgi:error] [pid 116628:tid 140699140834880] [remote 171.78.234.250:51518] ModuleNotFoundError: No module named 'bitssatoshiproject>
Вот мой файл http conf-
`
<VirtualHost *:80>
ServerAdmin ubuntu@172-31-11-19
ServerName 172-31-11-19
ServerAlias 172-31-11-19.com
ErrorLog /home/ubuntu/site/logs/error.log
CustomLog /home/ubuntu/site/logs/access.log combine
<Directory /home/ubuntu/BitsSatoshi/bitssatoshiproject>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
WSGIDaemonProcess bits python-home=/home/ubuntu/bitsvenv python-path=/home/ubuntu/BitsSatoshi/
WSGIProcessGroup bits
WSGIScriptAlias / /home/ubuntu/BitsSatoshi/bitssatoshiproject/wsgi.py
</VirtualHost>
`
Пожалуйста, помогите мне, парень, я пытаюсь уже много дней.
Я перепробовал все руководства в google, но безуспешно и даже не знаю, что я не прав. Но одно я знаю точно, что wsgi не получает мою виртуальную среду python.
Здравствуйте, проблема в этой строке WSGIDaemonProcess на строке 14 вы не указали wsgi на правильный каталог виртуального окружения, пожалуйста, проверьте пример ниже для структуры проекта и файла Apache и используйте эту ссылку для более подробной информации
django_project
└── env (Все файлы ENV)
.
├──── manage.py
.
└── my_django_project
.
├── init.py
.
├── settings.py
.
├── urls.py
.
└── wsgi.py
Файл конфигурации Apache
<VirtualHost *:80>
ServerAdmin admin@djangoproject.localhost
ServerName djangoproject.localhost
ServerAlias www.djangoproject.localhost
DocumentRoot /home/user/django_project
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
Alias /static /home/user/django_project/static
<Directory /home/user/django_project/static>
Require all granted
</Directory>
Alias /static /home/user/django_project/media
<Directory /home/user/django_project/media>
Require all granted
</Directory>
<Directory /home/user/django_project/my_django_project>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
WSGIDaemonProcess django_project python-path=/home/user/django_project python-home=/home/user/django_project/env
WSGIProcessGroup django_project
WSGIScriptAlias / /home/user/django_project/my_django_project/wsgi.py
</VirtualHost>
Где django_project - основной каталог, а my_django_project - подкаталог в нем. Измените директории в приведенном выше коде соответственно.
Включение файла виртуального хоста для проекта Django После того как мы создали файл djangoproject.conf, нам нужно включить этот файл виртуального хоста, введя
cd /etc/apache2/sites-available
sudo a2ensite djangoproject.conf