Извините, если я выгляжу потерянным, но у меня очень мало опыта развертывания веб-приложений, и поиск в Интернете не помогает. Как гласит заголовок, я использую Ubuntu, Apache2, PostgreSQL и Django, - и я постоянно получаю сообщения об ошибках, большинство из которых либо расплывчаты и / или не имеют четких решений. Кроме того, мое невежество по поводу специфических c взаимодействий вызывает любые попытки найти решение, поэтому я буду очень конкретным c.
Установки:
- apache2 libapache2-mod- wsgi-py3 - для python 3
- Не могу вспомнить, установил ли я django или он автоматически упакован с моим пакетом PyCharm.
- PostgreSQL - отлично работает.
Приложение:
- Это платформа облачных вычислений, поэтому она должна принимать файлы, хранить файлы и рендеринг файлов.
- Прекрасно работает с подключенным веб-сервером Django.
- имеет stati c файлов и нуждается в записи в папку мультимедиа
settings.py :
- DEBUG = True
- WSGI_APPLICATION = 'example.wsgi.application'
-DATABASES =
'default':
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'example',
'USER': 'example',
'PASSWORD': 'example',
'HOST': 'localhost',
'PORT': '',
000-default.conf
<VirtualHost *:80>
ServerName FireAnts.localhost
ServerAlias www.FireAnts.localhost
DocumentRoot /var/www/FireAnts
<Directory /var/www/FireAnts/FireAnts>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
WSGIDaemonProcess FireAnts python-path=/var/www/FireAnts python-home=/var/www/FireAnts/venv
WSGIProcessGroup FireAnts
WSGIScriptAlias / /var/www/FireAnts/FireAnts/wsgi.py
</VirtualHost>
ОШИБКИ, по журналу
- В настоящее время я получаю сообщение «Модуль не назван» django '".
- Часто я получаю" заполнить "не реентерабельный - проблема, которая, кажется, имеет миллион возможных решений.
- Целевой WSGI не может быть загружен как Python модуль.
Я временно заставил работать другой скрипт, удалив все строки, записывающие в файл error.txt - файл, который существует для обоих пакетов и генерирует синтаксические ошибки. По какой-то необъяснимой причине он снова сломался с ошибкой «No module name django». Кроме того, я переместил весь пакет из внешнего каталога в '/ var / www /' (и изменил файл 000-default.conf). это не должно вызывать каких-либо проблем, поскольку виртуальная среда перемещается вместе с пакетом, а база данных все равно должна подключаться извне. Но я предполагаю, что это сгенерировало ошибку 500 раньше, записывая в файл, который больше не имеет разрешений на запись. Может ли моя база данных как-то сгенерировать ошибку (заблокировав соединение)? Если пользователь позже загрузит пакет, он временно запишет в папку мультимедиа. Даже если он еще не написал, это могло сломать это? Нужно ли делать какие-либо дополнительные изменения при перемещении пакета в / var / www directory?. Я понятия не имею, что может быть причиной этих ошибок. Это должна быть ошибка конфигурации apache, потому что она работает с веб-сервером Django и разрывается только с apache2 ...
Извините за беспорядок и отсутствие организации; я просто понятия не имею, где я мог все испортить. - но каждая попытка исправить просто ломает это снова. Буду признателен за любую помощь.