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

Série de vidéos sur le montage d'une serre horticole ACD

 Episode 1: Préparation du terrain Episode 2: Montage de la serre en elle même Episode 3: Finalisation avec le montage électrique alimentant la serre Bon visionnage Fab

Présentation des outils utiles pour l'entretien de ses haies vives

Afin de gérer les haies vives, il est nécessaire d'avoir recourt à un matériel adapté. Les solutions à batteries sont bien adaptées pour un usage personnel avec des dimensions raisonnables. Ainsi dans mon cas précis, j'utilise les outils suivants de la Gamme Ryobi 18V ONE+ électroportatif: Petit taille-haies simple mais efficace -  RYOBI OHT1855R Un modèle plus puissant qui fonctionne très bien -  RYOBI RY18HTX60A Pour les parties hautes de vos haies, voici un outil très utile -  RYOBI OPT1845 Enfin lorsque vous devez élaguer certains arbres ou certaines partie hautes de vos haies, ce dernier outil est très utile -  RYOBI OPP1820 Ces outils font parti maintenant de mon arsenal de base pour maintenir notre maison chaque saison de taille. Fab

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