Pourquoi des traits de soulignement sont interdits dans les noms d'en-tête HTTP
Y a quelques mois j'ai eu un problème avec un en-tête HTTP personnalisé nommé "SESSION_ID", pas été transmise par le proxy nginx.
J'ai dit que les caractères de soulignement sont interdites conformément à la RFC du protocole HTTP.
Recherche sur google, j'ai trouvé que la plupart des serveurs comme apache ou nginx les définir comme illégale.
RFC2616 la section 4.2 dit
suivre le même format générique que celle qui est donnée dans la Section 3.1 de la RFC 822 [9]
et RFC822 dit
Le champ nom doit être composé de caractères ASCII imprimables
(c'est à dire, les personnages qui ont des valeurs entre 33. et 126.,
virgule, à l'exception du côlon)
trait de soulignement est de 95 caractère décimal dans la table ASCII (appartient à 33-126 gamme).
Ce qui me manque?
Vous devez vous connecter pour publier un commentaire.
Ils ne sont pas interdits. C'est CGI héritage. Ici
Caractères de soulignement dans les champs d'en-tête sont autorisés (RFC 7230, sec. 3.2.), mais en effet rare.