Css versiyon önbellek problemi

Web sitelerinde kullandığımız önbellekleme kodları yüzünden css üzerinde yaptığımız değişikliklerin görüntülenememesi durumları yaşanabiliyor. Bunu aşmak için css dosyalarını çağırdığımız alanda versiyon bilgisini değiştirerek yeni bir yükleme yapılmasını sağlayabiliriz.

Bu hataya neden olan kodlar;


ExpiresActive On
ExpiresDefault "access plus 2678400 seconds"
ExpiresByType text/html "access plus 1 year"
ExpiresByType text/css "access plus 1 year"
ExpiresByType text/javascript "access plus 1 year"
ExpiresByType application/xhtml+xml "access plus 1 year"
ExpiresByType application/javascript "access plus 1 year"
ExpiresByType application/x-javascript "access plus 1 year"
ExpiresByType application/pdf "access plus 1 year"
ExpiresByType application/x-shockwave-flash "access plus 1 year"
ExpiresByType image/x-icon "access plus 1 year"
ExpiresByType image/jpeg "access plus 1 year"
ExpiresByType image/jpg "access plus 1 year"
ExpiresByType image/png "access plus 1 year"
ExpiresByType image/gif "access plus 1 year"

Bu yapılandırma kodlarında web sitesine daha önce giriş yapan kullanıcı için css dosyasını önbelleğinde saklamasını ve sonraki girişinde bunu kullanarak tekrar yüklemesinin önüne geçilmesini sağlarız.

Bu işlem css dosyalarında yaptığımız değişikliklerin daha önce siteye giren kullanıcılar tarafından görüntülenmemesine neden olur.

Css versiyon işlemi css dosyasında yaptığımız değişikliğin herkes tarafından son güncellemeyi görüntülemek için basit bir çözümdür.

Bunun için;

<link href="css/style.css?v1.1" rel="stylesheet">

Css dosya uzantısından sonra yazdığımız versiyon bilgisi bu sorunu düzelmek için yeterli.

Dilerseniz php aracılığı ile bir değişkene atayıp admin panelden versiyon değişikliği yapabilirsiniz.

<?php $version = "3.4.2"; ?>

<link rel="stylesheet" href="style.css?v=<?php echo $version; ?>">

 

Versiyon için ?v'den sonra yazdığınız rakamların bir önemi yoktur. Tarihte yazabilirsiniz yada işinizi kolaylaştıracak başka bir sayıda. Önemli olan önceki versiyonlardan farklı bir numara girmektir.

E.Albayrak

0 Yorum

Soru & Yorum


Web Tasarım

Renkli Kare

Web Tasarım Ajansı