web-dev-qa-db-fra.com

Ajouter des en-têtes Expires à Azure Hosted wordpress

En utilisant Azure Hosted WordPress, je faisais quelques tests de performance pour mon site web via gtmetrix. Mes rapports suggéraient "d’exploiter la mise en cache du navigateur" et "d’ajouter des en-têtes d’expiration" afin d’améliorer l’évaluation de mes performances.

Ainsi, même après la mise à jour de .htaccess, la mise à jour n'a pas été mise à jour, mais j'ai constaté que cela n'affectait en rien mes rapports de performance. Cela m'a fait penser à Azure et qu'il fonctionnerait IIS dans le backend et non pas Apache - et bien sûr IIS n'utilise pas le fichier .htaccess, il utilise plutôt web.config.

Alors, comment puis-je ajouter des en-têtes Expires?

3
Ajay Kabadi

IIS prend en charge les entêtes expirées, ajoutez-les simplement à votre fichier web.config .

Exemples:

SOURCE

<configuration>
   <system.webServer>
      <staticContent>
         <clientCache cacheControlMode="UseExpires"
            httpExpires="Tue, 19 Jan 2038 03:14:07 GMT" />
      </staticContent>
   </system.webServer>
</configuration>

SOURCE

À partir de .NET Daily, j'ai réussi à appliquer cela à un site PHP sur IIS. Il définit l’âge maximum à 30 jours à partir de maintenant, sans avoir à spécifier une date explicite.

Ajoutez ceci à votre fichier web.config:

<system.webServer>
  <staticContent>
    <clientCache cacheControlMaxAge="30.00:00:00" cacheControlMode="UseMaxAge"/>
  </staticContent>
</system.webServer>

Cette configuration répond à la fois aux exigences de PageSpeed ​​"Exploitation de la mise en cache du navigateur" et à YSlow "Ajout des en-têtes d'expiration". YSlow requiert une valeur supérieure à 7 jours. PageSpeed ​​nécessite entre 30 jours et 1 an.

2
Simon Hayter