mod_expires não expira para imagens (png, jpeg, gif)

1

Estou usando esta configuração abaixo no meu apache2.conf

<IfModule mod_expires.c>
  ExpiresActive On
  ExpiresByType image/gif "access plus 6 month"
  ExpiresByType image/jpg "access plus 6 month"
  ExpiresByType image/jpeg "access plus 6 month"
  ExpiresByType text/javascript "access plus 6 month"
  ExpiresByType text/css "access plus 6 month"
  ExpiresDefault "access plus 6 month"

</IfModule>

Está trabalhando para css e js

curl -I example.com/assests/css/global.css

 Expires: Wed, 14 Jan 2015 09:28:17 GMT

mas quando eu enrolo qualquer arquivo de imagem

curl -I example.com/assets/images/banner-16-water-purifier.jpg 

Expires: Sun, 17 Aug 2014 09:29:10 GMT

Como você pode ver para jped não está funcionando. O mesmo se aplica a todas as imagens (jpeg / png / gif)

    
por user3382916 19.07.2014 / 16:44

1 resposta

1

Sua configuração parece correta e testes OK no Apache 2.2.22. Verifique se você tem alguma diretiva mod_expires (ExpiresByType ou ExpiresDefault) em outro lugar que esteja sobrescrevendo o apache.conf.

Comece com qualquer arquivo .htaccess no caminho das imagens, incluindo a pasta da web raiz, / assets / e / assets / images /. A menos que você tenha desabilitado o uso de .htaccess nessas pastas, as diretivas em .htaccess substituirão o conjunto de configurações em qualquer outro lugar.

Em seguida, verifique seu arquivo de host virtual em / apache2 / sites-available / e, em seguida, quaisquer outros arquivos de configuração incluídos pelo apache2.conf, como /apache2/httpd.conf, /apache2/mods-available/expires.conf ( se existir) e quaisquer arquivos em /apache2/conf.d/.

Eu encontrei algo semelhante ao adicionar diretivas mod_expire a uma configuração de host virtual. Eu estava me perguntando por que ainda mostrou uma expiração de 30 dias quando eu tinha definido para outra coisa, mas, em seguida, notei software de cache no site tinha adicionado ExpiresByType e ExpiresDefault para um arquivo .htaccess.

    
por 20.07.2014 / 01:15