Aller au contenu

Forcer le rafraichissement d'une page


Geo

Sujets conseillés

Bonjour,

Je fais souvent des modifications sur mon site (surtout en ce moment où j'essaie d'optimiser peu à peu mes CSS qui en ont grand besoin) et le résultat est souvent catastrophique pour celui qui a mes pages dans son cache. C'est plutôt gênant ...

J'ai essayé <meta http-equiv="refresh" content="1;URL='xxx.htm'> mais le rafraichissement se met en boucle. :blink:

Il me semble avoir lu quelque part qu'un script PHP permettait de rafraichir automatiquement la page une seule fois, mais pas moyen de le trouver...

Je précise que je n'ai jamais touché au PHP, donc niveau en-dessous de zéro...

Merci d'avance...

Lien vers le commentaire
Partager sur d’autres sites

Salut,

Tu te trompes de meta, celle-là est faire pour provoquer un rafraichissement, alors que tu veux simplement exprimer que la page ne doit pas être mise en cache car elle est fréquemment mise à jour.

Tu trouveras ici une petite liste (non exhaustive) des metas et de leurs rôles.

Lien vers le commentaire
Partager sur d’autres sites

Tu peux combiner le PHP et la balise meta refresh.

Il te suffit pour cela de tester la valeur de

$_SERVER["HTTP_REFERER"] et l'url de la page en cours. Tu as deviné, si la page d'où tu vient et la même que celle en cours tu ne rafraichis pas auquel cas tu rafraichis donc affiche la balise meta :)

Modifié par solo
Lien vers le commentaire
Partager sur d’autres sites

Ben oui et non...

Si le rafraichissement se faisait une seule fois à l'ouverture de la page sans se mettre en boucle, ça m'irait très bien et je n'aurais pas besoin d'empêcher la mise en cache de la page.

A moins que quelque chose ne m'échappe... C'est normal que le rafraichissement se répête comme ça à l'infini avec meta refresh ?

Sinon je ne connaissais pas pragma, donc c'est ce que tu me conseilles ?

<edit: je répondais à Marvin>

Modifié par Geo
Lien vers le commentaire
Partager sur d’autres sites

Tu peux combiner le PHP et la balise meta refresh.

Il te suffit pour cela de tester la valeur de

$_SERVER["HTTP_REFERER"] et la fonction de la page en cours. Tu as deviné, si la page d'où tu vient et la même que celle en cours tu ne rafraichis pas auquel cas tu rafraichis donc affiche la balise meta :)

<{POST_SNAPBACK}>

OK j'ai compris.

Sinon le script exact ça donne quoi (je suis une buse en PHP comme je l'ai déjà dit :rolleyes: )

Lien vers le commentaire
Partager sur d’autres sites

Il serait plus logique et plus simple de ne pas mettre la page en cache, que d'utiliser du php pour faire cela. regarde du coté des meta.

<META HTTP-EQUIV="pragma" CONTENT="no-cache"> sera parfait.

Lien vers le commentaire
Partager sur d’autres sites

Encore moi avec mes histoires de cache (bien que ce ne soit plus tellement dans la bonne rubrique... :blush: )

OK pour les pages, j'ai empêché la mise en cache... Mais le problème persiste, à cause des feuilles de style qui elles aussi se mettent en cache, donc bonjour les dégats quand la nouvelle page htm s'affiche avec CSS non modifié.

Y'a rien à faire là j'imagine ?

Au fait, combien de temps les pages restent-elles en cache si la personne ne fait pas le ménage dans les temporary internet files ?

Lien vers le commentaire
Partager sur d’autres sites

Avec la balise meta 'no-cache', il suffit d'attendre que tout le monde ait un cache à jour, et le tour est joué.

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...