
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
1¿Cuál es la estructura recomendada para organizar los archivos settings de un proyecto Django en producción?
¿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?
¿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?
¿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.
¿Qué valor de ALLOWED_HOSTS permite aceptar cualquier host, y por qué es peligroso en producción?
¿Para qué sirve el setting CSRF_TRUSTED_ORIGINS introducido en Django 4.0?
+19 preguntas de entrevista
Otros temas de entrevista Django
Fundamentos de Python
Python orientado a objetos
Fundamentos de Django
Models Django - Fundamentos
Vistas de Django
Plantillas Django
Formularios Django
QuerySets avanzados
Autenticación en Django
Middleware de Django
Django Admin
Django REST Framework
Señales de Django
Carga de archivos
Caché de Django
Sesiones de Django
Email en Django
Testing en Django
Seguridad de Django
Despliegue de Django
Django ORM avanzado
Rendimiento de Django
Django & Celery
Django Channels
Django & GraphQL
Django & Docker
Django en un ecosistema de microservicios
Comandos personalizados de Django
Internacionalización en Django
Patrones de Diseño en Django
Django Async y ASGI
Observabilidad y monitoreo
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