Mengkonfigurasi favicon dengan header yang kedaluwarsa dalam htaccess


12

Saya telah mengimplementasikan header Expires melalui mod_expires di server Apache saya dan telah berhasil membuat header expires untuk sebagian besar tipe file, namun saya mengalami masalah dengan favicon.

Saya awalnya mencoba menambahkan satu set instruksi untuk file .ico tetapi ketika memeriksa melalui YSlow itu tidak memiliki set kedaluwarsa.

Ketika ini tidak berhasil, saya mengubahnya menjadi GIF, namun ini tampaknya memiliki masalah yang sama.

Gif lain di situs web telah menetapkan tajuk kedaluwarsa dengan benar (setidaknya sesuai dengan YSlow).

Adakah yang bisa menjelaskan situasi ini?

Jawaban:


19

Jika Anda menggunakan Apache, cukup tambahkan MIME-Type untuk favicon di file .htaccess situs web Anda atau ke file mime.types Apache:

# Add Proper MIME-Type for Favicon
AddType image/x-icon .ico

Kemudian, tetapkan tajuk Kedaluwarsa beberapa bulan di masa mendatang:

# Enable Apache's mod_expires Module
ExpiresActive On
ExpiresByType image/x-icon "access plus 1 month"

Setelah mengosongkan cache browser Anda dan memuat ulang halaman, Anda akan melihat file favicon.ico disajikan dengan header Cache-Control yang diatur ke tanggal (ditentukan dalam detik) di masa mendatang:

Content-Type image/x-icon
Cache-Control: max-age=2592000

Untuk informasi terkait, lihat dokumentasi YSlow tentang Making favicon.ico Kecil dan Cacheable di: http://developer.yahoo.com/performance/rules.html#favicon


+1 Ini benar-benar berfungsi. Pastikan untuk menghapus cache Anda melalui orang, saya pikir ini tidak berfungsi sampai saya secara manual membersihkan cache saya. Tidak yakin mengapa penyegaran tidak dilakukan tetapi apa pun.
Ya Barry

0

Ini di sini berfungsi untuk saya:

# Cache the following content for 1 month (4 Weeks)
<FilesMatch "\.(jpg|jpeg|png|gif|ico)$">
Header set Cache-Control "max-age=2419200, public"
</FilesMatch>
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.