2011-03-01 15 views
6

Çalıştığım bir web sitesinde, eski eski JPEG görüntülerinin (yaklaşık bir düzine, < 10 KB) neden önbellek denetimi üstbilgileri almayacağını anlayamıyorum kuvvet besleniyor. Kullanmakta olduğum .htaccess kuralları en son HTML5 Boilerplate .htaccess file (aşağıdaki ilgili bölüm) temel alınmıştır. Garip olan, sitede aynı miktarda PNG var ve bunlardan ikisi hariç, önbellek denetimi üstbilgileri mükemmel çalışıyor. mod_expires, JPEG görüntülerinde önbellek denetimi üstbilgileri ayarlamıyor

<IfModule mod_expires.c> 
    ExpiresActive on 

# Perhaps better to whitelist expires rules? Perhaps. 
    ExpiresDefault       "access plus 1 month" 

... 

# media: images, video, audio 
    ExpiresByType image/gif     "access plus 1 month" 
    ExpiresByType image/png     "access plus 1 month" 
    ExpiresByType image/jpg     "access plus 1 month" 
    ExpiresByType image/jpeg    "access plus 1 month" 

... 

    <IfModule mod_headers.c> 
    Header append Cache-Control "public" 
    </IfModule> 

</IfModule> 

(üç nokta kaldırıldı gereksiz ExpiresByType kural bölümlerini belirtir) Ben hemen hemen her conf dosyası oradan dahil etmek yoluyla benim /etc/apache2/apache2.conf dosyadan sağ geçirdiyseniz ve mantıklı bir açıklaması bulabilirsiniz

. Ayrıca, Folded ve Chrome'un saatlerce ölümüne kadar denetledim ve hala clueless.

Düzenleme: Aşağıda belirtildiği gibi, bu web sitesinin web kökünde yalnızca bir tane .htaccess dosyası var. JPEG'ler mim tip image/jpeg ile geliyor, ancak önbellek denetimi üstbilgileri eksik ve nedenini anlayamıyorum.

cevap

5

mod_headers bölümüne no-transform bölümünü ekledim ve eminim, her şey beklendiği gibi çalışıyor. Şimdi duvara alnımdan bir mola verebilirim.

<IfModule mod_headers.c> 
    Header append Cache-Control "public, no-transform" 
    </IfModule> 
+1

Sanırım kendi cevabınızı kabul edebilirsiniz. –

+0

@Clodoaldo iki gün boyunca değil. – Marcel