🐍 Django-разработчикам: `DEBUG=True` в проде опаснее, чем кажется.
Это не просто красивые страницы ошибок. При включённом DEBUG приложение может раскрывать stack trace, настройки, пути файлов, middleware, URL-паттерны и другие детали окружения.
Главная рекомендация - fail closed:
DEBUG = False
То есть по умолчанию DEBUG всегда выключен, а включается только локально.
Даже staging, QA и preview-среды, доступные из интернета, лучше запускать с DEBUG=False.
Отдельная ловушка - переменные окружения:
DEBUG = os.environ.get("DEBUG", "False") != "False"
Здесь DEBUG=false или DEBUG=0 могут неожиданно превратиться в True.
Лучше явно парсить boolean или использовать django-environ.
Мелкая настройка, которая однажды может спасти production от очень неприятной утечки.
https://lincolnloop.com/blog/setting-djangos-debug-safely/
#Python #Django #Backend #Security #DevOps
@Python_Community_ru

August 11, 2026 576 3