2011-02-14 5 views
0

J'utilise Apache Webserver pour une application django. Comment puis-je définir la mise en cache pour les images et les css? J'ai couru un webpagetest sur mon site Web, et il dit "expiration non spécifiée" pour css et images. Mais, quand je l'utilise Firebug, pour les fichiers css, Firebug montre les demandes et les en-têtes de réponse, ainsi que dans l'onglet cache, il montreQuelques questions sur la mise en cache

périphérique: Disque

et aucune demande sont indiquées pour les images. Donc, je suis un peu confus. Qu'est-ce qu'il se passe ici.?

Répondre

2

J'ai l'habitude cette configuration pour les fichiers statiques django dans mon apache vhost:

Alias /static/ "/home/django/projectName/static/" 
    <Directory "/home/django/projectName/static"> 
      Order allow,deny 
      Allow from all 
      Options +FollowSymLinks 
      ExpiresActive On 
      ExpiresByType image/gif A1209600 
      ExpiresByType image/jpeg A1209600 
      ExpiresByType image/png A1209600 
      ExpiresByType text/css A1209600 
      ExpiresByType text/javascript A1209600 
      ExpiresByType application/x-javascript A1209600 
      <FilesMatch "\.(css|js|gz|png|gif|jpe?g|flv|swf|ico|pdf|txt|html|htm)$"> 
         ContentDigest On 
         FileETag MTime Size 
      </FilesMatch> 
    </Directory> 

Rappelez-vous de ne pas utiliser la vue static.serve django dans la production.

Utilisez également Ctrl + Maj + R pour effectuer un rechargement complet dans Firefox (cache de remplacement)