Forcer la page à recharger à partir du serveur au lieu de charger la version mise en cache
J'ai la page web de A. L'utilisateur clique sur un formulaire pour soumettre les données, et il l'emmène à la page web de B. Lorsqu'il clique sur le bouton de retour, j'ai besoin d'Une page web pour être actualisé à partir du serveur, plutôt que chargés à partir du cache. J'ai ceci: <meta http-equiv="expires" content="0">
mais il ne semble pas fonctionner. J'ai aussi essayé de définition d'une variable sur la page B (variable de session via php) et de vérifier ensuite sur Une page et de les actualiser (ou pas) en fonction de son existence. Cela fais semblent de travail. Le code de base est que:
Page:
<?php
if(isset($_SESSION['reloadPage'])) {
unset($_SESSION['reloadPage']);
echo'
<script>
window.location.replace("/****/****/*****.php");
</script>
';
}
?>
Et sur la page B:
$_SESSION['reloadPage'] = 1;
Avec la solution PHP, tout simplement, il continue d'essayer d'actualiser la page dans une boucle sans fin. Quelque chose dans ma logique manquant? Est-ce la bonne façon d'aller à ce sujet?
MODIFIER
Après enquête, lorsque vous indiquer au navigateur de ne pas mettre en cache la page, est-ce que la force d'un plein côté serveur d'actualisation ainsi? C'est ce dont j'ai besoin. Un serveur complet côté de rafraîchissement de la page.
source d'informationauteur mdance
Vous devez vous connecter pour publier un commentaire.
OK essayez plutôt ceci:
Vous aurez besoin de mettre $_SESSION['form_submitted'] = true à la page 2.
Essayer avec tous les trois:
Je sais que c'est une vieille question, et déjà la réponse (qui ne rafraîchissantes à partir du serveur). Donc, je voudrais faire part d'une solution à l'aide de jQuery.
Explication:
Lorsque vous cliquez sur le bouton de retour, le
setTimeout
sera déclenché après 1 seconde (1000 millisecondes). Ensuite, la page de rechargement à partir du serveur en tant que paramètre à l'intérieur de lareload
esttrue
.Si vous mettez
true
à l'intérieur de lareload
il permettra de recharger à partir du serveur, tandis que si vous mettezfalse
il permettra de recharger à partir du cache. Source w3schools.Votre JavaScript doit être...
Je pense que cela devrait résoudre votre boucle.