En-tête HTTP pour indiquer le serveur d'origine derrière l'équilibreur de charge


13

À des fins de débogage, nous aimerions configurer notre pool de serveurs Web à charge équilibrée pour produire un en-tête HTTP identifiant le "vrai" serveur qui a servi la demande. Cependant, nous ne savons pas quel nom d'en-tête cela devrait être! Y a-t-il un en-tête préexistant pour cela? Avez-vous un favori?

Réponses:


18

AFAIK il n'y a pas de norme formelle pour cela. Ce que j'ai vu c'est:

  • Un en-tête HTTP personnalisé. Il est vraiment votre choix aussi longtemps que vous restez dans l'espace de noms X- . Personnellement, X-Backend-Serverc'est descriptif et cela semble populaire .

  • Écriture de l'ID du serveur principal dans un commentaire HTML à la fin du corps du contenu.

Mise à jour: J'ai trouvé cette enquête sur les en-têtes HTTP dans la nature à partir de 2011. Ma suggestion X-Backend-Serverest le numéro 119, tandis que le X-Server-Name numéro 56 de la liste . Je dirais donc que X-Server-Namel'en-tête est le plus courant pour cela.


1
Notez que le préfixe X était obsolète: tools.ietf.org/html/rfc6648
Edward Z. Yang

@Edward Z. Yang: Bon commentaire. De ce RFC, section 1, puce 4: "Ne fait aucune recommandation quant à savoir si les paramètres" X- "existants doivent rester en service ou être migrés [...]". En l'absence de nouvelles implémentations (que je ne connais pas), je m'en tiendrai personnellement à X-Backend-Server ou à un en-tête "X-" similaire. :-)
Jesper M

4
Le fait est que, indépendamment du fait que les en-têtes "X-" soient officiels, obsolètes ou quoi que ce soit d'autre, ils ne cassent rien et sont très utiles à des fins telles que celle qui est demandée ici. Bref, c'est très bien de les utiliser.
John Gardeniers

1
Il semble que X-Served-By soit en fait plus utilisé à ce jour, selon ce rapport.
Brian Wigginton

4
Liens rompus ...
slm
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.