X-Pad: évite l’en-tête de bug du navigateur ajouté par apache

Je vois cet en-tête ajouté à la réponse d’apache. Cela a-t-il une signification dans les navigateurs du nouvel âge? ou il est simplement là pour contourner un bug dans les anciennes versions de Netscape. Semble bizarre.

MODIFIER

Je faisais un test de performance sur notre application, quand j’ai vu que dans le texte de réponse de Jmeter, il y avait cet en-tête étrange qui revient. Ça disait:

X-pad: avoid browser bug 

C’est tout! J’ai donc essayé de googler, et cela semblait être un en-tête ajouté pour le bug des navigateurs Netscape. Quoi qu’il en soit, je suis toujours curieux, puisque nous sums si loin de ces versions de navigateur (heureusement), y a-t-il une raison solide pour que cela soit toujours là. Nous utilisons apache2.

J’espère que ces détails vous aideront.

À votre santé

Non, c’est un vestigial header de nos jours; c’est-à-dire qu’il a été mis en place pour contourner un bogue dans un navigateur qui est obsolète (plusieurs générations de plus qu’IE6 – le bogue a été signalé à partir de 1997, il y a 15 ans!) et personne ne l’utilise plus.

Le correctif pour le supprimer se trouve dans SVN d’Apache depuis 2008, mais il ne semble pas encore être propagé à toutes les dissortingbutions (de plus, certains sites peuvent utiliser des versions non mises à jour d’Apache).

Voici le commentaire de l’en-tête, repris de la source :

 /* Navigator versions 2.x, 3.x and 4.0 betas up to and including 4.0b2 * have a header parsing bug. If the terminating \r\n occur starting * at offset 256, 257 or 258 of output then it will not properly parse * the headers. Curiously it doesn't exhibit this problem at 512, 513. * We are guessing that this is because their initial read of a new request * uses a 256 byte buffer, and subsequent reads use a larger buffer. * So the problem might exist at different offsets as well. * * This should also work on keepalive connections assuming they use the * same small buffer for the first read of each new request. * * At any rate, we check the bytes written so far and, if we are about to * tickle the bug, we instead insert a bogus padding header. Since the bug * manifests as a broken image in Navigator, users blame the server. :( * It is more expensive to check the User-Agent than it is to just add the * bytes, so we haven't used the BrowserMatch feature here. */ 

Je sais que la réponse a été acceptée mais je pense que cela serait utile pour les utilisateurs exécutant php.
Si vous êtes un utilisateur php et que vous obtenez cet en-tête. Vous pouvez le désactiver en utilisant l’en-tête “X-Powered-By” personnalisé.
Par exemple:
header('X-Powered-By: Powerful Management'); vous pouvez également le supprimer de cette façon
header_remove('X-Pad'); , en définissant parfois cet en-tête à vide le supprime également:
header('X-Pad:')
et bam votre en-tête X-Pad disparaîtra