Django

Settings y configuración de producción

División de settings (base/dev/prod), gestión de secretos, ALLOWED_HOSTS, CSRF_TRUSTED_ORIGINS, settings SECURE_*, .env/vault, configuración de almacenamiento

22 preguntas de entrevista·
Senior
1

¿Cuál es la estructura recomendada para organizar los archivos settings de un proyecto Django en producción?

Respuesta

La estructura recomendada consiste en crear un paquete settings con un archivo base.py que contiene las configuraciones comunes, y luego archivos separados dev.py, staging.py y prod.py que importan y extienden base.py. Este enfoque permite compartir la configuración común mientras se personalizan entornos específicos, facilitando el mantenimiento y reduciendo la duplicación de código.

2

¿Cómo especificar qué archivo settings usar al iniciar un proyecto Django?

Respuesta

La variable de entorno DJANGO_SETTINGS_MODULE permite especificar la ruta Python al módulo settings a usar. Por ejemplo, DJANGO_SETTINGS_MODULE=myproject.settings.prod le indica a Django que use el archivo prod.py del paquete settings. Esta variable puede definirse en el shell, en los archivos de configuración del servidor o en los scripts de despliegue.

3

¿Cuál es la función del setting ALLOWED_HOSTS en Django?

Respuesta

ALLOWED_HOSTS es una lista de dominios/hosts autorizados para servir la aplicación Django. Este mecanismo de seguridad protege contra los ataques HTTP Host header validando el encabezado Host de cada petición. En producción con DEBUG=False, este setting es obligatorio y debe contener los dominios legítimos de la aplicación para evitar errores 400 Bad Request.

4

¿Qué valor de ALLOWED_HOSTS permite aceptar cualquier host, y por qué es peligroso en producción?

5

¿Para qué sirve el setting CSRF_TRUSTED_ORIGINS introducido en Django 4.0?

+19 preguntas de entrevista

Domina Django para tu próxima entrevista

Accede a todas las preguntas, flashcards, tests técnicos, ejercicios de code review y simuladores de entrevista.

Empieza gratis