Après la mise à jour d’Apache et HTTP/2, il est apparu un nouveau type d’erreur : l’erreur 421 Misdirected Request.
Erreur 421 : erreur de configuration mod_ssl entre Virtual Hosts
Ce type d’erreur arrive lorsque:
- HTTP/2 est activé,
- les paramètres SSL de plusieurs Virtual Hosts diffèrent du serveur responsable du handshake SSL/TLS.
En analysant le changelog d’Apache 2.4.18, je me suis rendu compte que si les paramètres SSL et notamment la liste des ciphers utilisables ne sont pas équivalentes entre les différents Virtual Hosts, alors l’erreur 421 est déclenchée.
Solution : harmoniser la configuration mod_ssl
La solution est donc toute simple, il suffit de comparer la configuration mod_ssl
des Virtual Hosts et l’harmoniser de manière à lisser les différences. Je vous recommande un outil comme Meld pour comparer les différences entre vos fichiers.
Meld est disponible dans les dépôts de base, vous pouvez l’installer sur votre machine de dév avec un simple:
apt-get install meld
Code language: JavaScript (javascript)
Le domain sharding ou servir les ressources statiques sur un sous-domaine
Sur le site, cela est dû à la mise en place du domain sharding que j’avais mis en place il y a quelques années pour charger plusieurs fichiers ressources en parallèle et accélérer les temps de chargement.
HTTP/2 promet beaucoup de choses et apparemment le domain sharding serait maintenant devenu inutile. J’attends un peu de voir comment vont évoluer les choses avant de changer toute ma configuration et éditer tous mes liens.