Django

Settings & Configuration Production

Settings split (base/dev/prod), secrets management, ALLOWED_HOSTS, CSRF_TRUSTED_ORIGINS, SECURE_* settings, .env/vault, storage configuration

22 questions d'entretien·
Senior
1

Quelle est la structure recommandée pour organiser les fichiers settings d'un projet Django en production ?

Réponse

La structure recommandée consiste à créer un package settings avec un fichier base.py contenant les configurations communes, puis des fichiers séparés dev.py, staging.py et prod.py qui importent et étendent base.py. Cette approche permet de partager la configuration commune tout en personnalisant les environnements spécifiques, facilitant la maintenance et réduisant la duplication de code.

2

Comment spécifier quel fichier settings utiliser lors du démarrage d'un projet Django ?

Réponse

La variable d'environnement DJANGO_SETTINGS_MODULE permet de spécifier le chemin Python vers le module settings à utiliser. Par exemple, DJANGO_SETTINGS_MODULE=myproject.settings.prod indique à Django d'utiliser le fichier prod.py du package settings. Cette variable peut être définie dans le shell, dans les fichiers de configuration du serveur ou dans les scripts de déploiement.

3

Quelle est la fonction du setting ALLOWED_HOSTS en Django ?

Réponse

ALLOWED_HOSTS est une liste de domaines/hôtes autorisés à servir l'application Django. Ce mécanisme de sécurité protège contre les attaques HTTP Host header en validant l'en-tête Host de chaque requête. En production avec DEBUG=False, ce setting est obligatoire et doit contenir les domaines légitimes de l'application pour éviter les erreurs 400 Bad Request.

4

Quelle valeur de ALLOWED_HOSTS permet d'accepter n'importe quel hôte, et pourquoi est-ce dangereux en production ?

5

À quoi sert le setting CSRF_TRUSTED_ORIGINS introduit dans Django 4.0 ?

+19 questions d'entretien

Maîtrise Django pour ton prochain entretien

Accède à toutes les questions, flashcards, tests techniques, exercices de code review et simulateurs d'entretien.

Commencer gratuitement