Est-il sûr d'utiliser http (s): //CompanyName.com/xyz comme URL (par exemple à des fins de personnalisation) sans aucune modification des configurations côté service?
Je sais que le DNS est insensible à la casse, mais pourrait-il encore y avoir des effets secondaires? Je pense par exemple à diverses parties de la chaîne qui ne correspondent pas à CompanyName.com ~ companyname.com:
- Certains backend web peuvent ne pas correspondre
- Certains pare-feu d'équilibrage de charge / proxy / cache / application peuvent ne pas correspondre
- Certains clients peuvent appliquer à tort des politiques de même origine
- Certains clients peuvent ne pas correspondre dans les vérifications de certificats
- Alors que le DNS est généralement insensible à la casse, les IDN pourraient-ils changer l'image?
Quelqu'un a-t-il rencontré ces problèmes ou d'autres problèmes avec les majuscules dans la partie du nom d'hôte des URL?
[modifier] @Michael Hampton a souligné que, selon les normes HTTP, le nom d'hôte est insensible à la casse, mais certains logiciels ne sont pas conformes à cet égard.
J'essaie de comprendre à quel point les logiciels non conformes sont répandus, en particulier les clients. Je suppose que tous les principaux navigateurs récents fonctionnent bien, mais qu'en est-il par exemple des applications mobiles? (Dois-je mieux séparer cela en une question SF distincte?) [/ Modifier]
la source
Host
tête en minuscules (du moins c'est ce que mes outils de développement me montrent), donc en supposant que tous les navigateurs le font, vous ne devriez pas avoir de problème même si certains équipements sur le chemin du serveur n'aiment pas les cas mixtes nom d'hôte.curl
d'autre part, conserve la casse lors de l'envoi de l'en-tête.Réponses:
Oui, le nom d'hôte est vraiment insensible à la casse, comme spécifié dans la RFC 3986 § 3.2.2 , car les noms d'hôte en général ne respectent pas la casse dans le DNS . Ce RFC donne également des recommandations sur la façon d'éviter les problèmes que vous avez mentionnés:
Je l' ai vu au moins un cache HTTP ( W3 Total Cache ) qui ne normalise le nom d' hôte de cette manière, et se termine la mise en cache contenu plusieurs fois, par exemple sous
example.com
,Example.Com
,EXAMPLE.COM
, etc.la source