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

Apache Discussion :

Cache header,ExpiresByType Modify ou Access ?


Sujet :

Apache

  1. #1
    Expert éminent
    Avatar de neo.51
    Profil pro
    Inscrit en
    avril 2002
    Messages
    2 663
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations forums :
    Inscription : avril 2002
    Messages : 2 663
    Points : 6 418
    Points
    6 418
    Par défaut Cache header,ExpiresByType Modify ou Access ?
    Bonjour,

    Je suis en train de voir comment optimiser un site et je tombe sur le sujet des caches header.

    Si j'ai bien compris, je peux dire par exemple que mes images seront en cache coté client pendant une certaine durée après le dernier accès à la ressource, ou après la dernière modification de la ressource.

    Mais là où je comprend pas c'est que je vois quasiment tous les exemples du net avec un cache X semaine après le dernier accès... quel intérêt ? Quel est l'intérêt de vider le cache du client si la ressource n'a pas été modifiée ?

    Pourquoi ne pas mettre toutes ses ressources (images, javascript, css) en cache client avec une durée de vie du cache 1 seconde après modification ?


    Quelqu'un pourrait m'éclairer car j'ai l'impression que je ne saisi pas une subtilitée du truc...

    merci

  2. #2
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : août 2005
    Messages : 9 601
    Points : 12 751
    Points
    12 751
    Par défaut
    Citation Envoyé par neo.51 Voir le message
    Pourquoi ne pas mettre toutes ses ressources (images, javascript, css) en cache client avec une durée de vie du cache 1 seconde après modification ?
    Beh comment tu voudrais faire ça ? Comment le navigateur peut-être savoir qu'une ressource a changé sur le serveur sans la redemander au serveur ?

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  3. #3
    Expert éminent
    Avatar de neo.51
    Profil pro
    Inscrit en
    avril 2002
    Messages
    2 663
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations forums :
    Inscription : avril 2002
    Messages : 2 663
    Points : 6 418
    Points
    6 418
    Par défaut
    ben il ne demande que l'entête du fichier pour connaitre sa dernière date de modif et non le fichier en entier...

    http://httpd.apache.org/docs/2.0/mod/mod_expires.html

    En fait c'est un peu le but de ma question : avantages et inconvénient entre par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ExpiresDefault "access plus 1 month"
    Bon là ok ça reste dans le cache client 1 mois

    mais si je fais

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ExpiresDefault "modification plus 1 seconds"
    Ben là ça semble parfait car tant que je modifie pas mon fichier pas de dl et si je le modifie le navigateur met son cache client à jours 1 seconde après.

    Le soucis c'est que ça semble un trop bonne solution trop facile à mettre en place et que je n'ai vu personne utiliser cette syntaxe.

    ... donc je voudrais un peu plus d'explication et de retour d'expérience sur le fonctionnement de ces directives

  4. #4
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : août 2005
    Messages : 9 601
    Points : 12 751
    Points
    12 751
    Par défaut
    Citation Envoyé par neo.51 Voir le message
    Ben là ça semble parfait car tant que je modifie pas mon fichier pas de dl et si je le modifie le navigateur met son cache client à jours 1 seconde après.
    Non, c'est pas du tout ça. Comme je disais, seul le serveur connaît la date de modification du fichier, pas le client. Si tu mets à jour le fichier dans le document root le 01/06/2010 à 21:14:56, le serveur enverra les en-têtes qui vont bien pour dire que la ressource doit être gardée en cache jusqu'au 01/06/2010 à 21:14:57, donc à la prochaine requête, c'est quasi sûr à 100% que le navigateur ira redemander le fichier complet. Dans ce cas, c'est le serveur qui dit quand (quelle date et quelle heure précise) la ressource expire. Dans le cas d'un ExpiresDefault "access plus 1 month", c'est le navigateur qui dit quand il ira redemander le fichier. On ne peut pas faire un mélange des deux : le client ne peut pas savoir à la seconde près quand la ressource a été modifiée sur le serveur sans faire au moins un HEAD.

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

Discussions similaires

  1. Modifier table access avec VB
    Par greg360 dans le forum VBA Access
    Réponses: 15
    Dernier message: 31/08/2010, 16h03
  2. Header : Cannot modify header information
    Par yamatoshi dans le forum Langage
    Réponses: 5
    Dernier message: 17/06/2008, 11h06
  3. pb modifier projet access
    Par conics dans le forum VBA Access
    Réponses: 3
    Dernier message: 27/06/2007, 13h18
  4. creer un formulaire et modifier bdd access
    Par nboubeur dans le forum ASP.NET
    Réponses: 2
    Dernier message: 28/05/2007, 20h18
  5. Modifier password Access via VBA ???
    Par HookerSeven dans le forum Access
    Réponses: 4
    Dernier message: 19/02/2006, 23h48

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