Accéder au contenu principal

SharePoint : Modification des Headers Entity Tags (ETags) dans IIS

 Dans la continuité des modifications permettant d’améliorer les performances d’une ferme SharePoint, nous allons voir le cas particulier de l’entête HTTP ETag :

Ce paramètre ajouté directement par le serveur WEB permet d’avoir une “datation” du flux envoyé par celui-ci.

L’idée est donc de permettre au client WEB la possibilité de comparer directement la date de chargement de deux objets. Si on trouve une différence entre ces deux objets, un rechargement est fait, sinon le cache du navigateur est utilisé.

On trouve une explication de ce mécanisme avec Internet Explorer :


Problème en cas de clustering

Dans le cas d’une ferme SharePoint, on peut avoir plusieurs Web Front End qui vont donc répartir la charge WEB entre chaque machine (que ce soit via NLB, BigIP ou autre).

La valeur Etag peut être spécifique à un serveur et host, ce qui fait que, suivant la machine qui nous répond, la valeur de cet Etag pour un même objet ne sera pas la même et donc Internet Explorer effectuera un rechargement de l’objet.

A ce moment on comprend que le cache coté utilisateur n’est plus utilisé de manière optimale à cause de ce test et de cette différence de valeur qui n’a aucun rapport avec la fraicheur du contenu côté serveur


Solution

La solution alternative est donc de bloquer cette option sur chaque application WEB de chaque serveur placé dans le cluster WEB. Pour faire simple, on va forcer la valeur de cet entête à vide.

Pour cela, il faut se connecter sur chacun des serveurs Web Front End de la ferme et ouvrir IIS Manager, on va cliquer avec le bouton droit sur une des Applications Web de la ferme et choisir “Properties” :

Untitled

On va alors sélectionner la rubrique “HTTP Headers” et cliquer sur “Add” dans la partie “Custom HTTP headers” :

Untitled2

On va donc remplir les champs :

  • Custom header name: Etag
  • Custom header value: [vide]

Untitled3

On valide par OK et on applique la modification, qui va nous demander si on applique celle-ci sur tous les répertoires virtuels ou non :

Untitled4

on clique sur OK et on confirme ce changement.


Conclusion

Une fois appliquée sur toutes les Web Applications de tous les serveurs WEB de la ferme SharePoint, l’option Etag ne sera plus utilisée par le navigateur et vous éviterez des rechargements inutiles d’objet gérés par IIS.


Attention:

Cette modification ne sera prise en compte que pour les objets gérés par IIS. En effet, SharePoint gère aussi un flag HTTP Header ETag, comme on peut le voir sur la capture suivante :

Untitled5

La valeur est alors sous un format spécifique géré par SharePoint et non plus IIS et sera la même pour chaque objet provenant de n’importe quel Web Front End.


Romelard Fabrice [MVP]

Commentaires

Posts les plus consultés de ce blog

Redonner vie à une Microsoft Surface RT : le guide ultime vers Linux !

Vous avez une vieille Microsoft Surface RT qui traîne dans un tiroir ? Vous savez, cette tablette de 2012 devenue inutilisable depuis l'abandon officiel de Windows RT par Microsoft ? Ne la jetez surtout pas ! Dans ma dernière vidéo, je vous montre comment transformer cet appareil, autrefois considéré comme un "presse-papier", en une tablette Linux moderne et parfaitement fonctionnelle . Pourquoi ce projet ? L'objectif est simple : transformer ce matériel pour en faire un dashboard dédié à mon système Home Assistant. En installant postmarketOS , une version de Linux spécialement conçue pour les appareils ARM abandonnés, on redonne une seconde jeunesse à cette machine . Ce que vous allez apprendre dans ce tutoriel complet : La libération du matériel : Comment réinstaller la version d'origine pour passer outre les blocages de Windows 8.1 . Jailbreak & Secure Boot : La procédure indispensable pour déverrouiller la machine et permettre l'installation d...

Série de Videos sur Home Assistant intégrant la production Photovoltaïque

 Un certain nombre de vidéos sont en ligne pour intégrer sa production photovoltaïque dans Home Assistant en partant de la base. Installation de Home Assistant: On peut ensuite intégrer les composant des Micro-Onduleurs Enphase, mais aussi les batteries Enphase: Ou encore le composant de contrôle Ecojoko: Ce qui permet alors de faire des comparaisons entre les valeurs capturées: Des videos seront encore publiés dans les prochaines semaines sur différents aspects de cette solution. Fab

Mixer les batteries Enphase et Zendure : La solution ultime pour l'autoconsommation ?

Introduction Vous avez déjà une installation solaire équipée de micro-onduleurs Enphase , mais vous trouvez que le stockage officiel de la marque est trop coûteux ou difficile à installer en DIY ? Vous n'êtes pas seul. Aujourd'hui, je vous partage mon retour d'expérience complet sur une configuration qui intrigue beaucoup de monde : le couplage d'un système Zendure SolarFlow avec un environnement Enphase existant. Pourquoi vouloir mixer ces deux marques ? Le système Enphase est une référence en termes de fiabilité, mais l'ajout de batteries IQ Battery peut représenter un investissement lourd. À l'inverse, Zendure propose avec le SolarFlow une solution de stockage plug-and-play extrêmement flexible et souvent plus abordable. L'idée est simple : utiliser le SolarFlow comme "tampon" entre vos panneaux et vos micro-onduleurs pour stocker l'excédent de la journée et le réinjecter la nuit. Le montage : Est-ce vraiment compliqué ? Dans ma dernière ...