Gestion cache d'images distantes

Discussion dans 'Administration d'un site Web' créé par Fufu34, 10 Décembre 2009.

  1. Fufu34
    Fufu34 Nouveau WRInaute
    Inscrit:
    10 Décembre 2009
    Messages:
    1
    J'aime reçus:
    0
    Bonjour,

    Pour les besoins d'un développement nous avons du mettre en place un serveur media sur lequel est hébergé toutes les images produits du projet.

    Sur ce même serveur nous avons un script php qui va tester l'existence du fichier image selon les paramètres qui lui sont passés pour afficher un no_image dans le cas ou celui ci n'existerai pas.

    Un htaccess est également présent pour éviter de faire un appel direct au script php dans le but d'avoir des noms de fichier de type mon_fichier.jpg et non image.php?n=mon_fichier

    Mon pb est le suivant les images ne sont jamais en cache (avec firebug le status de celles ci est toujours 200 au lieu de l'abituel 304 not modified)

    Voici le détail de l'htaccess

    Code:
    Options +FollowSymlinks
    RewriteEngine on
    RewriteRule ^(.+)-(.+)-(.+)\.jpg 						image_product_id.php?c=$1&p=$2&w=$3 [L,QSA]
    
    Voici le détail du fichier php

    Code:
    <?php
    if(isset($_GET['type']) && !empty($_GET['type'])) { $sType = $_GET['type']; } else { $sType = 'jpg'; }
    if(isset($_GET['c']) && !empty($_GET['c'])) { $sCodeReseau = $_GET['c']; }
    if(isset($_GET['p']) && !empty($_GET['p'])) { $iProductId = $_GET['p']; }
    if(isset($_GET['w']) && !empty($_GET['w'])) { $iTailleImage = $_GET['w']; }
    $sNomImage = "../produits_id/".$iProductId.'_'.$iTailleImage.'_'.$iTailleImage.'.'.$sType;
    $sNomNoImage = "../NO_IMAGE/".strtolower($sCodeReseau).'_'.$iTailleImage.'_'.$iTailleImage.'.'.$sType;
    if(file_exists($sNomImage)) { $sImage = $sNomImage; } else { $sImage = $sNomNoImage; }
    header('Content-type:image/'.$sType);
    header('Content-transfer-encoding: binary');
    header('Content-length: '.filesize($sImage));
    $offset = 60 * 60 * 24 * 3;
    header('Cache-Control: '.$offset);
    $ExpStr = "Expires: " . gmdate("D, d M Y H:i:s", time() + $offset) . " GMT";
    header($ExpStr);
    readfile($sImage);
    ?>
    
    si quelqu'un a une idée à mon pb je suis preneur

    Merci d'avance pour vos réponses :D
     
  2. Leonick
    Leonick WRInaute accro
    Inscrit:
    8 Août 2004
    Messages:
    19 415
    J'aime reçus:
    0
    regarde avec livehttpheader sur FF les en-têtes renvoyées par son serveur d'image
     
  3. luccé
    luccé Nouveau WRInaute
    Inscrit:
    6 Novembre 2009
    Messages:
    8
    J'aime reçus:
    0
    Essaye ça :

    Code:
    header('Cache-Control: max-age='.$offset.', must-revalidate');
     
Chargement...
Similar Threads - Gestion cache images Forum Date
gestion des méta cache Demandes d'avis et de conseils sur vos sites 18 Décembre 2009
Apache : gestion du cache Administration d'un site Web 10 Décembre 2009
PWA => GTM & gestion cookies ? Développement d'un site Web ou d'une appli mobile 20 Janvier 2020
Outil de gestion des réseaux sociaux Facebook 2 Janvier 2020
Gestion de cookies problème directives CNIL. Administration d'un site Web 15 Novembre 2019
WordPress Gestion des catégories Référencement Google 27 Octobre 2019
Gestion de cookie, mode opt-in ? Droit du web (juridique, fiscalité...) 23 Mai 2019
Prestashop 1.7 Gestion des quantités produits Annuaires et moteurs 26 Septembre 2018
Gestion annonces (contenus éphémères) et 404 Débuter en référencement 24 Septembre 2018
Transfert de gestion d'un nom de domaine Administration d'un site Web 18 Septembre 2018
  1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies.
    Rejeter la notice