OUJOOD.COM
Avoir un site qui fonctionne en ligne est une chose, avoir un site sécurisé en est une autre. Une fois que votre serveur est prêt, vous devez ajuster quelques réglages dans votre fichier settings.py pour activer les protections avancées de Django. Ces options sont souvent désactivées en développement car elles compliquent les tests, mais elles sont obligatoires pour la production.
Forcer le HTTPS
Aujourd'hui, le SSL (HTTPS) n'est plus une option. Si votre site n'est pas chiffré, les navigateurs afficheront une alerte de sécurité. Django peut vous aider à forcer cette connexion sécurisée. Je vous conseille d'activer ces variables pour rediriger automatiquement tout le trafic HTTP vers HTTPS.
SECURE_SSL_REDIRECT = True
SECURE_HSTS_SECONDS = 31536000 # Force le HTTPS pendant 1 an
SECURE_HSTS_INCLUDE_SUBDOMAINS = True
SECURE_HSTS_PRELOAD = True
Sécuriser les cookies de session
Par défaut, les cookies de Django peuvent être envoyés via une connexion non sécurisée. C'est un risque de vol de session. En activant les options suivantes, vous garantissez que les cookies ne circulent que sur du HTTPS et qu'ils ne sont pas accessibles via JavaScript. C'est une barrière efficace contre les attaques de type XSS.
SESSION_COOKIE_SECURE = True CSRF_COOKIE_SECURE = True SECURE_BROWSER_XSS_FILTER = True SECURE_CONTENT_TYPE_NOSNIFF = True
Vérifier la configuration avec check --deploy
Django possède un outil d'audit intégré. Avant de considérer que votre travail est terminé, lancez cette commande dans votre terminal. Elle va scanner vos réglages et vous signaler tout oubli qui pourrait mettre en péril votre application. C'est le juge de paix du développeur.
python manage.py check --deploy
Si vous obtenez un message vert, félicitations : votre application est parée pour le web. Pour mettre en pratique tout ce que nous avons appris, nous allons maintenant passer à la réalisation d'un projet Django : blog complet.
Par carabde | Mis à jour le 09/05/2026