Выбор ответа Junior Django: устройство спрашивают часто обновлено

DEBUG = True в продакшене

Вопрос

Чем опасен DEBUG = True на боевом сервере?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Ошибки показывают трейсбэки и настройки, а SQL-запросы копятся в памяти. Отладочная страница ошибки раскрывает код, переменные, часть настроек, что упрощает атаку.

Варианты ответа

  1. Сайт работает быстрее, но пишет в лог меньше информации об ошибках
  2. Django отказывается подключаться к базе, пока не задан DEBUG_DB
  3. Отключается CSRF-защита, чтобы формы было удобнее отлаживать
  4. Ошибки показывают трейсбэки и настройки, а SQL-запросы копятся в памятиправильный ответ

Разбор

Отладочная страница ошибки раскрывает код, переменные, часть настроек, что упрощает атаку. Плюс в режиме DEBUG Django записывает каждый SQL-запрос в connection.queries, и долгоживущие процессы растут по памяти. CSRF при этом не отключается, а скорость не выше. Перед выкладкой запускают manage.py check --deploy.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.