J'ai mis en place une boîte vagabonde avec Ubuntu 18.04 et installé Apache 2.4.29. J'ai créé et activé un nouveau fichier Conf qui ressemble à ceci:
<VirtualHost *:80>
ServerName Django.dev
ServerAlias www.Django.dev
ServerAdmin webmaster@localhost
DocumentRoot /var/www/
ErrorLog ${Apache_LOG_DIR}/error.log
CustomLog ${Apache_LOG_DIR}/access.log combined
</VirtualHost>
Pour une raison quelconque, Apache répond avec un en-tête HSTS lorsque j'essaie d'appeler django.dev:
Je n'ai aucune idée d'où cela vient de. Il n'y a pas de telle en-tête définie dans apache2.conf ni en 000-par défaut.conf et je n'ai même pas de mod_ssl activé.
Enfilement, tout fonctionne comme prévu si vous appelez directement l'IP directement. Si je ping django.dev, il est résolu à exactement la même adresse IP.
Est-ce que quelqu'un sait comment ou où je peux désactiver la HST? Je suis à perte et je suis déjà perdu des heures d'essayer de résoudre ce problème.
La stratégie HSTS est mise en cache par le navigateur pour les secondes spécifiées dans le max-age
Directive ( RFC 6797, 6.1.1 ). La suppression de l'en-tête de la configuration du serveur Web ne supprime pas la stratégie du cache (ni une liste de préchargement, si elle est soumise à une), et il continue donc à causer 307 Internal Redirect
s sur chaque navigateur qui a déjà mis en cache la politique.
Comme spécifié dans RFC 6797, 5. :
Seul l'hôte HSTS donné peut mettre à jour ou peut entraîner la suppression de sa politique de TVHT émise. Cela l'accomplit en envoyant
Strict-Transport-Security
Champs d'en-tête de réponse HTTP aux UAS avec de nouvelles valeurs pour la durée de la durée de la stratégie et la sous-domaine applicable. Ainsi, les UAS mettent en cache les informations sur la politique de la TVHTS les plus fraîches sur le nom d'un hôte HSTS. Spécification d'une durée de temps zéro signale l'UA pour supprimer la stratégie HSTS (y compris toute directive assertée Industriauline) pour cet hôte HSTS.
Par conséquent, Le seul moyen de supprimer une stratégie HSTS consiste à définir une en-tête HSTS avec une durée zéro , et le navigateur doit également voir cet en-tête sur un Connexion sans erreurs TLS ni avertissements ( 2.2 ).
<VirtualHost *:443>
. . .
Header always set Strict-Transport-Security "max-age=0"
</VirtualHost>
Enfilement, tout fonctionne comme prévu si vous appelez directement l'IP directement.
Ce n'est pas du tout étrange. Comme expliqué dans la Annexe A ,
- Les hôtes HSTS sont identifiés uniquement via des noms de domaine - l'identification explicite de l'adresse IP de tous les formulaires est exclue. Ceci est destiné à simplifier et est également en reconnaissance de divers problèmes liés à l'utilisation d'une identification de l'adresse IP directe de concert avec la sécurité basée sur la PKI.
.dev
Si cela est littéralement un .dev
Domaine , vous ne pouvez pas désactiver la HSTS.
Votre sécurité est notre priorité. Le domaine .
dev
Le domaine de niveau supérieur est inclus dans la liste de précharge HSTS, ce qui permet à HTTPS requis sur toutes les connexions à toutes les connexions .dev
sites Web et pages sans avoir besoin d'une inscription ou d'une configuration individuelle HST. La sécurité est intégrée.