Interdire le cache d'une image pour les navigateurs

WRInaute occasionnel
Salut,

j'ai une petite question d'ordre technique.

Je voudrais qu'une image ne soit pas gardée en cache par le navigateur plus de X minutes.

J'ai déjà essayé avec plusieurs header(), mais rien n'y fait, je crée des images à la volée en php, et ca ressort du png, mais certains visiteurs me disent que leur image ne se met pas à jour...

Quelqu'un a-t-il la solution ?
 
WRInaute passionné
Y a t il un moyen pour que nos fichié de site Web ne se retrouve pas dans le repertoire Tempory Internet Files.
 
WRInaute occasionnel
Borower : Non, vu que le navigateur doit les télécharger pour pouvoir les afficher

STFProd : il existe une solution en php.

[mode solution dégueulasse ON]
rajoute un paramètre GET aléatoire à la fin du nom de ton image, un date('U') fera l'affaire (voir aussi: microtime, etc)
Exemple: graph.jpg deviendra graph.jpg?graph=465798465
le browser pense que c'est une nouvelle image et la retélécharge.
[/mode solution dégueulasse OFF]
 
WRInaute occasionnel
Code:
header("Expires: " . gmdate("D, d M Y") . " 23:59:59 GMT");             // Date du passé
header("Last-Modified: " . gmdate("D, d M Y") . " 00:00:01 GMT"); // toujours modifié
header("Cache-Control: no-cache, must-revalidate");           // HTTP/1.1
header("Pragma: no-cache");                                   // HTTP/1.0
header("Content-type: image/png");

Voilà ce que j'ai mis, mais ca ne semble pas suffisant...
 
WRInaute passionné
Merci Didier_S
Cela m'est bien embettant.
Derniere petite question j'ai pu remarqué que sur certain site en voulant enregistré la source de la page
Exemple sous IE Fichier/Enregistrer Sous l'enregistrement ne peux s'effectuer.
Avez vous une idée de comment faire cela.

Merci de vos reponce.
 
WRInaute occasionnel
certainnement avec des script java. j'ai vu un site qui affiche une source vide aussi. mais dès qu'on désactive java, le tout est accessible. si votre souci est la protection alors il n'y'a pas de solution mircale. par contre la question de gestion du cache pour actualisation de la page. j'avais ce problème avec un formulaire que lorsque je réaffiche il ne s'actualise pas j'ai donc résolu le problème avec php header comme à peu près mentionné ci-dessous.
 
WRInaute passionné
j'ai déja eu cet hottible expérience avec IE :p quand j'ai voulu réaliser un script pour proteger les images contre la copie ...
et j'y suis enfin parvenu à prévenir le cache IE :D
voici le bout de code à utiliser
Code:
header("Content-type: image/jpeg");
$expires = 0;
$exp_gmt = gmdate("D, d M Y H:i:s",time()-1000+$expires)." GMT";
$mod_gmt = gmdate("D, d M Y H:i:s",time()-1000)." GMT";

header("Expires: -1");
header("Last-Modified: {$mod_gmt}");
header("Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0, public, max-age={$expires}");
// HTTP/1.0
header("Pragma: no-cache");

et si tu voeux qu'un document html ne soit pas mis en cache, il faut utiliser ce meme code tout au début ET ajouter les meta tags anti-cache standard APRES la balise </body>

héé oui y'a des choses comme ça chez krosoft ;) ... et pour les trouver ... faut y aller

tien moi au courant si ça marche pour toi
 
WRInaute passionné
Merci bien aladdin
J'aimerais bien que cela marche je vais regarder ce soir.
Sinon je sais qu'il y a un site ou tu ne peux pas sauvegarder la page c'est le site de google.
Le blogger.
Avez vous une idée de comment il font ?
 
WRInaute passionné
@Borower : google utilise du javascript, en utilisant les plugin webdevelopper et "view rendered source" de firefox tu peut voir le code ;)

nodom a dit:
on ne peut jamais protéger une image contre la copie à
moins qu'on l'affiche pas. :lol:

si si on peut ... mais pas contre le screenshot ...
ata je vais réactiver la protection sur une gallerie et tu peut aller essayer de récup les images ;)

je ne dis pas que c'est totalement impossible mais très difficile

voici le lien http://www.oujdacity.net/oujda-photos-fr.html

je laisserai cette gallerie protegé un ou deux jours ;)
 
WRInaute occasionnel
j'ai vu apparament .haccess. mais si j'utilise mon appreil photo ou copie écran... je voudrais que tout ce qui exposé est copiable.
 
WRInaute passionné
ce n'est pas une protection .htaccess, c'est du pure php.

avec la copie d'écran on peut prendre les photos mais avec une moin bonne qualité ... sinon pour l'appareil photo ... j'ai un petit doute ;) : t'a déja essayer de voir à quoi ressemble un écran d'ordinateur sur une photo ?? :D
 
Discussions similaires
Haut