Django DEBUG False не работает в производственной среде

Я новичок в мире Django и Python, в настоящее время я работаю над сайтом на Dajngo, который размещен на виртуальной машине Ubuntu20.04. После переноса сайта на продакшн, я заметил, что, хотя DEBUG установлен на False в настройках продакшена. Я все еще вижу ошибки Django DEBUG, как если бы DEBUG был установлен на True .

Когда я запускаю команду python manage.py runserver на виртуальной машине, я получаю следующую ошибку.

CommandError: Вы должны установить settings.ALLOWED_HOSTS, если DEBUG равен False.

Структура папки

.
├── __init__.py
├── __pycache__
│   ├── __init__.cpython-310.pyc
│   ├── urls.cpython-310.pyc
│   ├── views.cpython-310.pyc
│   └── wsgi.cpython-310.pyc
├── settings
│   ├── __init__.py
│   ├── __pycache__
│   │   ├── __init__.cpython-310.pyc
│   │   ├── base.cpython-310.pyc
│   │   ├── local.cpython-310.pyc
│   │   └── production.cpython-310.pyc
│   ├── base.py
│   ├── local.py
│   └── production.py

base.py (Общие настройки)

production.py

from AssaySite.settings.base import *

DEBUG = False

ALLOWED_HOSTS = [
    'www.exampl.com',
    'example.com',
]

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': 'abssaysitedb',
        'USER': 'admingres',
        'PASSWORD': 'password',
        'HOST': '192.168.1.201',
        'PORT': '8686',
    }
} 

local.py

from AssaySite.settings.base import *

DEBUG = False

ALLOWED_HOSTS = [
    '127.0.0.1',
    'localhost'
]


DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': 'postgres',
        'USER': 'postgres',
        'PASSWORD': 'admin',
        'HOST': 'localhost',
        'PORT': '5432',
    }
}

Я внимательно просмотрел код настроек, чтобы проверить, не является ли DEBUG истинным в какой-либо части моего кода, но все выглядит хорошо. Пожалуйста, помогите

Вам необходима переменная ALLOWED_HOSTS в settings.py.

ALLOWED_HOSTS = ['your_domain.com','www.your_domain.com']

или, это разрешит весь домен, что не рекомендуется

ALLOWED_HOSTS = ['*'] 

У меня та же проблема, но я использую файл .env для управления настройками. settings.py # мой файл настроек DEBUG = env('DEBUG')

.env # мой файл .env DEBUG=False приложение работает точно так, как и предполагалось, за исключением отладочной части, кстати, приложение размещено на ubuntu 20.04

Вернуться на верх