Probleme de cache iis, solution !

Soyez le premier à donner votre avis sur cette source.

Snippet vu 14 154 fois - Téléchargée 37 fois

Contenu du snippet

N'avez vous jamais eut des soucis de rafraichissement de vos pages ?
Parfois avec IIS et Internet Explorer 5 et + côté client, les page ASP ne semblent plus se réexecuter !

Ayant rencontré ce problème sur un serveur mutualisé, j'ai adopté une méthode radicale (un peu bourrin mais efficace) :

Sur tous les liens, je rajoute un paramètre supplémentaire = now() !

De cette manière, IIS et Internet Explorer sont duppés, l'URL semble toujours nouvelle ! (now() retourne la date et l'heure jusqu'à la centième de seconde)

Là, on est certain que la page serra bien rafraichie.

Même pour les Formulaires, je rajoute le paramètre dans l'action.

Source / Exemple :


'  *************************
' *                                           *
'* Problème de rafraichissement  *
' *                                           *
'  *************************

' Sur un lien classique :

<a href="listingdomaine.asp?debug=<%=now()%>"  target="_top">Retour au listing des domaines</a>

' Sur un Redirect
<%
Response.Redirect("listingdomaine.asp?filtre=OFF&debug="& now() )
%>

' Sur un formulaire :
<form method="post" action="save_modifierdomaine.asp?debug=<%=now()%>" id="form1" name="form1">

Conclusion :


Voilà, peut être qu'il y a une astuce pour qu'automatiquement tous les liens des pages prennent ce paramètre supplémentaire.

Si vous avez cette astuce, faites moi en part ! Merci.

A voir également

Ajouter un commentaire

Commentaires

cs_fabrice69
Messages postés
1766
Date d'inscription
jeudi 12 octobre 2000
Statut
Modérateur
Dernière intervention
11 décembre 2013
4 -
J'utilise le même systeme pour un autre but, l'affichage d'image (dont l'URL est dans une base).
En effet, je veux conserver le cache pour eviter au client de DL plusieurs fois le meme fichier inutilement. En revanche dans le cas d'une MAJ de l'image (qui garde tjs le meme nom), je veux que le client alors rafraichisse l'image.

Possible uniquement par l'ajout comme le fait ici Yannick dans sa source.
Donc le No-Cache n'est pas la solution à tous les cas.

F___
cs_Mercury
Messages postés
329
Date d'inscription
jeudi 3 janvier 2002
Statut
Membre
Dernière intervention
7 octobre 2005
-
Normal Chrigou que ton browser recharge la page depuis le serveur, car tu lui demandes de ne pas la garder dans le cache ... C'est clair qu'on ne peut pas avoir le beurre et l'argent du beurre lol
cs_Chrigou
Messages postés
30
Date d'inscription
lundi 10 février 2003
Statut
Membre
Dernière intervention
27 juin 2008
-
Moi j'ai:
Response.AddHeader "pragma","no-cache"
Response.CacheControl = "no-cache"
Et ce sont les seules lignes qui évitent véritablement la mise en cache.
Avec ceci, le javascript "history.back()" ne fonctionne plus la même chose... Il recharge la page depuis le serveur :-(
cs_Mercury
Messages postés
329
Date d'inscription
jeudi 3 janvier 2002
Statut
Membre
Dernière intervention
7 octobre 2005
-
Non. Dans la logique, XP Home n'est pas prévu pour supporter IIS. Les boudilles ne fonctionnent pas non plus (j'ai déjà essayé). Le seule solution, re-passer sous 2000 (avec SP4 c'est le top), ou bien trouver un XP Pro ... Désolé.
apxa
Messages postés
188
Date d'inscription
mercredi 15 mai 2002
Statut
Membre
Dernière intervention
25 avril 2009
-
Moi je l'ai directement foutu dans les param de IIS.
D'ailleur est ce ke vs savez comment faire fonctionner IIS sur Xp Home j'ai tester le truc de www.asp-php.net mais bof je n'arrive tjrs po a acceder à l'admin de IIS en fait des ke suis rentre dedans il ne trouve aucun serveur et des ke je me connect sur la machine 127.0.0.1 avec administrateur ca ne marche po non plus.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.