Comment faire pour modifier l’en-tête HTTP Cache-Control lorsque vous utilisez IIS

IMPORTANT : Cet article est issu d'une traduction automatique réalisée par un logiciel Microsoft et non par un traducteur professionnel. Cette traduction automatique a pu aussi être révisée par la communauté Microsoft grâce à la technologie Community Translation Framework (CTF). Pour en savoir plus sur cette technologie, veuillez consulter la page http://support.microsoft.com/gp/machine-translation-corrections/fr. Microsoft vous propose en effet des articles traduits par des professionnels, des articles issus de traductions automatiques et des articles issus de traductions automatiques révisées par la communauté Microsoft, de manière à ce que vous ayez accès à tous les articles de notre Base de connaissances dans votre langue. Il est important de noter que les articles issus de la traduction automatique, y compris ceux révisés par la communauté Microsoft, peuvent contenir des erreurs de vocabulaire, de syntaxe ou de grammaire. Microsoft ne pourra être tenu responsable des imprécisions, erreurs, ainsi que de tout dommage résultant d’une traduction incorrecte du contenu ou de son utilisation par les clients.

La version anglaise de cet article est la suivante: 247404
Résumé
Les administrateurs Web qui utilisent Internet Information Services (IIS) devrez régulièrement désactiver la mise en cache de contenu qui changent fréquemment. Cet article décrit comment définir la valeur de l’en-tête HTTP Cache-Control à l’aide d’Active Server Pages (ASP), ainsi que la propriété de métabase CacheControlCustom.
Plus d'informations
Lorsque vous travaillez avec le contenu qui changent souvent, peut vouloir spécifier que le contenu peut être mis en cache et ce qu’il ne peut pas, et si le client ou un serveur proxy doit mettre en cache le contenu. Vous pouvez spécifier ces options dans IIS par le biais de la propriété CacheControlCustom , qui peut être définie pour l’ensemble du serveur, un site Web ou un répertoire physique ou virtuel spécifique. Cette propriété renvoie les en-têtes HTTP semblables aux suivants :
HTTP/1.1 200 OKServer: Microsoft-IIS/5.0Cache-Control: <CACHE SETTING>Content-Type: <type>/<subtype>Content-Length: <size of content>				
La valeur du paramètre du cache est déterminée par la spécification HTTP/1.1.

Valeurs d’en-tête de contrôle du Cache HTTP/1.1 couramment utilisées

La spécification HTTP/1.1 dans RFC 2616 définit plusieurs valeurs pour l’en-tête Cache-Control. La liste suivante contient quelques unes des valeurs plus courantes qui sont utilisées.
  • Public: réponse le HTTP peut être mis en cache par n’importe quel cache. Par exemple, un client ou un serveur proxy peut mettre en cache la réponse. Cela permet le partage de contenu entre les utilisateurs qui utilisent le même serveur proxy.

  • Privé: le message de réponse est destiné à un client unique et ne doit pas être mis en cache par un cache partagé. Par exemple, un serveur proxy ne doit pas mettre en cache la réponse même si un client peut. Cela permet au client de mettre à jour une version mise en cache, alors que les autres clients qui utilisent le même serveur proxy conservent différentes versions mises en cache.

  • No-cache: aucun cache dans le chemin d’accès complet ne doit conserver une copie mise en cache de la réponse. Cela vous permet de spécifier que ni le client ou le serveur proxy répond à une demande de contenu suivante à l’aide d’une version mise en cache.

Définition de la propriété de contrôle du Cache

Les exemples suivants définissent des méthodes différentes pour la définition de cette valeur :

Pour une Page

À l’aide d’Active Server Pages (ASP), le code ASP suivant désactive la mise en cache d’une page donnée :
<% @Language="VBScript" %><% Response.CacheControl = "no-cache" %>				
Remarque: ce code doit être inséré au début de la page, sauf si la mise en mémoire tampon est activée, dans la mesure où il modifie les en-têtes HTTP.

Pour un dossier

Les exemples suivants définissent le paramètre de Contrôle du Cache pour un dossier ou un répertoire virtuel nommé "Images" dans le site Web par défaut :
  • À l’aide de Adsutil.vbs :

    1. Ouvrez une invite de commande et votre dossier C:\InetPub\AdminScripts.
    2. Exécutez la commande suivante :
      ADSUTIL DE CSCRIPT. VBS SET W3SVC/1/racine/images/CacheControlCustom « no-cache »
  • À l’aide de scripts ADSI :


    1. Dans le bloc-notes, entrez le code ADSI suivant :
      Option ExplicitDim objCacheSet objCache = GetObject("IIS://localhost/w3svc/1/root/images")objCache.CacheControlCustom = "no-cache"objCache.SetInfo							
    2. Enregistrez le fichier sous Disablefolder.vbs dans votre dossier C:\InetPub\AdminScripts et fermez le bloc-notes.
    3. À l’invite de commande, modifiez à votre dossier C:\InetPub\AdminScripts.
    4. Exécutez la commande suivante :
      CSCRIPT DISABLEFOLDER.VBS VBS

RÉFÉRENCES

Pour plus d’informations sur ce sujet, veuillez consulter l’article suivant de la Base de connaissances Microsoft :
247389 IIS : Comment désactiver la mise en cache de Types MIME spécifiques
En outre, reportez-vous à la section 14.9 de la spécification HTTP/1.1 dans RFC 2616 à l’adresse suivante :
RFC 2616 Hypertext Transfer Protocol--HTTP/1.1
IIS5 iis5.0

Propriétés

ID d'article : 247404 - Dernière mise à jour : 06/11/2016 07:58:00 - Révision : 3.0

Microsoft Internet Information Services 6.0, Microsoft Internet Information Services 7.0

  • kbhowto kbmt KB247404 KbMtfr
Commentaires