Charger une page sans piocher dans le cache

Charger une page sans piocher dans le cache - HTML/CSS - Programmation

Marsh Posté le 28-12-2002 à 15:33:52    

Voilà, j'ai un site avec la possibilité de mettre en place un smiley perso pour poster des commentaires.
J'ai fait une petite interface pour changer le smiley, mais quand on valide et que la page se recharge (grace à un Header), c'est l'ancien smiley qui s'affiche et non pas le nouveau.
Si je veux que le nouveau s'affiche, faut faire un "F5"...
 
Donc si y'a un moyen de charger une page sans piocher dans le cache du navigateur, je prends :)
 
Merci!

Reply

Marsh Posté le 28-12-2002 à 15:33:52   

Reply

Marsh Posté le 28-12-2002 à 15:44:28    

c'est un problème serveur : lors de la page de changement de smiley, tu dois envoyer des headers pour dire au navigateur que la page est toujours modifiée.
 
(si tu n'as pas accès à ça, il suffit de recharger la page avec un paramètre aléatoire : page.php?54675897987 au lieu de page.php)

Reply

Marsh Posté le 28-12-2002 à 16:02:11    

C'est sûr que rajouter des headers http c'est ce
qu'il y a de mieux (il y a une commande php et asp pour ça).
 
Si tu ne peux pas faire ça, tu peux essayer ce meta tag :

<META HTTP-EQUIV="Pragma" CONTENT="no-cache">


 
Mais fais une recherche car je suis pas sûr que ça marche à chaque fois.
 
J'ai vu également un meta tag dans ce genre :

<META HTTP-EQUIV="Expires" CONTENT="-1">


 
Mais, pareil, je ne suis pas sûr du fonctionnement.


---------------
each day I don't die is cheating
Reply

Marsh Posté le 28-12-2002 à 17:42:45    

youdontcare> Je la recharge déjà avec un paramètre :)
 
Bon, merci beaucoup, je vais chercher dans ces pistes car aucun des 2 "meta" de fonctionnent directement.
 
Je mettrai le résultat quand je l'aurai trouvé pour les prochains ;)

Reply

Marsh Posté le 28-12-2002 à 18:17:50    

Si le smiley a le même nom c'est pas en évitant de mettre la page dans le cache que ça ira mieux :D
Le prob c'est que le GIF est dans le cache...


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 30-12-2002 à 08:13:21    

Perso je mets ça dans l'entête de mes pages ASP :  
<% Response.Expires = -1500 %>
Ca indique au serveur que la page a expiré depuis suffisament longtemps pour le forcer à prendre en compte la nouvelle version  :hello:

Reply

Marsh Posté le 30-12-2002 à 12:04:31    

Ici le prob c'est un GIF qui est dans le cache...


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 30-12-2002 à 12:50:50    

antp a écrit :

Ici le prob c'est un GIF qui est dans le cache...


 
ben t'en met un autre avec un autre nom ..  :D
genre gif-v2.gif


Message édité par jolly le 30-12-2002 à 12:51:29
Reply

Marsh Posté le 30-12-2002 à 13:20:17    

ou un param bidon : img.gif?bidon=1


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 30-12-2002 à 13:47:16    

antp a écrit :

ou un param bidon : img.gif?bidon=1


 
antp fait gaffe mais le j'ai peur qu'on tombe sur une grosse connerie !

Reply

Marsh Posté le 30-12-2002 à 13:47:16   

Reply

Marsh Posté le 30-12-2002 à 13:54:39    

:??:
 
http://forum.hardware.fr/icones/repondre.gif
http://forum.hardware.fr/icones/re [...] bidule=oui
 
le browser refait une requête au serveur pour le second lien


Message édité par antp le 30-12-2002 à 13:55:50

---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 30-12-2002 à 17:54:40    

je vois pas ou/comment ton serveur interprete différement cela ..
moi j'ai la meme reponse ...
 
mais il est vrai que cela peut se presente comme une requette php !
 
si t'arrive a faire le truc dis moi ce que tu as modifié  sur le serveur pour faire ca ..

Reply

Marsh Posté le 30-12-2002 à 20:48:32    

jolly a écrit :

je vois pas ou/comment ton serveur interprete différement cela ..
moi j'ai la meme reponse ...
 


 
bah oui, mais ton browser redownloade l'image au lieu de la prendre dans le cache ! C'est justement ça qu'on voulait faire ! (cf premier post du topic)
 

jolly a écrit :


mais il est vrai que cela peut se presente comme une requette php !
 


heu non vu qu'il s'agit d'un .gif et non d'un .php
 
 

jolly a écrit :


si t'arrive a faire le truc dis moi ce que tu as modifié  sur le serveur pour faire ca ..
 


 
le serveur il va renvoyer la même chose, et d'ailleurs on veut la même chose...
par contre le browser ne va pas prendre l'image du cache vu qu'il se dit qu'avec un param différent le résultat sera peut-être différent. Du coup il refait la requête et downloade l'image mise à jour, même si en fait le serveur renvoie bêtement le .gif sans se soucier du paramètre.


Message édité par antp le 30-12-2002 à 20:49:28

---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 31-12-2002 à 12:53:46    

antp a écrit :


 
bah oui, mais ton browser redownloade l'image au lieu de la prendre dans le cache ! C'est justement ça qu'on voulait faire ! (cf premier post du topic)
 


ouieffectivement ca peut marcher comme ca mais la t obligé de modifier ca a chaque "nouvelle" requete d'affichage de l'image ?? le cache du proxy il fait koi : il ajoute une nouvelle donnée  !!

Reply

Marsh Posté le 31-12-2002 à 12:57:09    

Je sais pas comment ça se gère, faut faire des tests :D


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 02-01-2003 à 10:26:16    

Bon ben revenu des fêtes, je vais tester ça :)
 
J'ai vu aussi un truc en PHP à côté duquel j'étais passé:
 

Code :
  1. <?php
  2.   header("Expires: Mon, 26 Jul 1997 05:00:00 GMT" );             // Date du passé
  3.   header("Last-Modified: " . gmdate("D, d M Y H:i:s" ) . " GMT" ); // toujours modifié
  4.   header("Cache-Control: no-cache, must-revalidate" );           // HTTP/1.1
  5.   header("Pragma: no-cache" );                                   // HTTP/1.0
  6. ?>


 
Du coup, mon sujet n'est plus trop dans HTML-JS mais bon, je vais voir tout ça.
 
Merci à tous en tout cas! :)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed