IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

HTML Discussion :

Comment forcer le rafraîchissement d'une page web ?


Sujet :

HTML

  1. #1
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2016
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2016
    Messages : 93
    Points : 95
    Points
    95
    Par défaut Comment forcer le rafraîchissement d'une page web ?
    Bonjour,

    Je suis à la recherche d'une méthode fiable, permettant d'actualiser à coup sûr toutes les images d'une page web, en forçant le navigateur à les demander au serveur, plutôt que d'aller les rechercher dans sa cache.

    Nous concevons un logiciel qui permet de composer des images, par assemblage d'éléments <DIV> html, sur une image de fond.
    Ce logiciel comporte un script de screenshoting, qui capture périodiquement l'image, avec toutes les <DIV> qui la superposent, et la sauve dans un petit picto.png de présentation.

    Le screenshoting fonctionne correctement, le petit picto conforme est bien créé.
    Ensuite, lorsqu'on retourne à la page d'accueil, qui présente tous les pictos des images éditables dans une galerie, on retrouve l'ancien picto antérieur aux modifications.

    J'ai tout essayé, pour forcer le navigateur à interroger le serveur, notamment :

    Des headers, en PHP
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <?php
     header("Cache-Control: no-store, no-cache, must-revalidate, max-age=0");
     header("Cache-Control: post-check=0, pre-check=0", false);
     header("Pragma: no-cache"); 
    ?>
    Des balises meta :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <!DOCTYPE html>
    <HTML>
     <HEAD>
      <META http-equiv="Content-Type" content="text/html; charset=utf-8">
      <META http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
      <META http-equiv="Pragma" content="no-cache" />
      <META http-equiv="Expires" content="1" />
     </HEAD>
    ...
    Rien n'y fait. Le navigateur (en l'espèce, Chrome sous Windows) fait ce qu'il veut.
    Ma question est donc de savoir quelle est l'instruction-miracle qui force, à coup sûr, tous les navigateurs à recharger la page <U>et toutes ses images</U>, depuis le serveur, et non depuis sa cache, ou un éventuel proxy.

    Une instruction qui fonctionne sur tous les navigateurs récents : Firefox, Chrome, Chromium, Opera, Safari, MS-Edge, ...
    Sans cela, les clients pourraient douter de la pertinence du logiciel, semble ne pas intégrer les modifications qu'il vient de porter récemment aux images.

    Merci.
    Christian.

  2. #2
    Membre émérite Avatar de vttman
    Homme Profil pro
    Développeur "couteau mosellan"
    Inscrit en
    Décembre 2002
    Messages
    1 140
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur "couteau mosellan"
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 140
    Points : 2 286
    Points
    2 286
    Par défaut
    regarder du coté de la fonction filectime() coté php, mais cela oblige à rajouter cette fonction sur chacune des images ?
    =>
    https://www.developpez.net/forums/d6...r-image-cache/
    https://www.developpez.net/forums/d1...registree-bdd/
    Emérite, émérite je ne pense pas ... plutôt dans le développement depuis FORT FORT longtemps, c'est mon job, ça oui
    A part ça ... Il ne pleut jamais en Moselle !

  3. #3
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    S'il s'agit juste des pictos :

    1/ changer le nom du picto à chaque screenshooting (ex. picto-(timestamp).png)
    du coup, nom différent = forcément rechargé

    2/ ou, si les pictos sont appelés via un script PHP, ajouter un paramètre "bidon" à l'URL
    Le paramètre bidon va obliger à utiliser le script plutôt que le cache.
    ex. :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <img src="affiche_picto.php?id_picto=....&param_bidon=(chaine_aleatoire)" />
    à tester ?...

Discussions similaires

  1. Réponses: 5
    Dernier message: 20/08/2006, 12h32
  2. Comment enregistrer les images d'une page web ?
    Par Chris33 dans le forum Réseau/Web
    Réponses: 1
    Dernier message: 11/07/2006, 22h09
  3. Forcer l'affichage d'une page web
    Par tit_oune dans le forum Langage
    Réponses: 2
    Dernier message: 30/05/2006, 14h37
  4. [VB.NET][1.1] Comment détecter le TimeOut d'une page web ?
    Par crimsonPhantom dans le forum ASP.NET
    Réponses: 1
    Dernier message: 13/01/2006, 20h01
  5. Réponses: 2
    Dernier message: 19/12/2005, 13h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo