Nasıl tarayıcı önbelleği önlemek için bir css dosyası subversion revizyon kullanırım

3 Cevap php

StackOverflow bu gibi uygular:

 <link rel="stylesheet" href="http://sstatic.net/so/all.css?v=4542">

Başvurulan dosyaları değiştirmek her zaman, link etiketinin href niteliği böylece önbelleğe alma ve güncelleştirilmiş başvurulan dosyaları destekleyen, HTML kodu güncellenir.

My question - nasıl bağlantı eklemek o css dosyanın yıkılma sürümünü almak mı? Subversion anahtar kelimeler yalnızca size içeri anda dosyasının revizyonunu söyle

PHP / CodeIgniter + jQuery ile çalışıyorum.

3 Cevap

all.css statik bir dosyadır.

Parametresi dosya ve emin tarayıcısı http://sstatic.net/so/all.css?v=4542 ve http://sstatic.net/so/all.css?v=400 olarak farklı dosyaları görüldüğü gibi, yanlış önbelleğe almaz emin olmak için her değiştiğinde artırılır.

Bu da yaygın sayısını grafik indirilir ve tarayıcı önbelleğe görüşlerin gerçek değeri ile berbat olur dayanmaktadır sayılır 'tıklanma' reklam ağlarında kullanılır.

Bir svn kanca taahhüt denir kullanın. Maalesef ben detayları var yok, ama umarım googling bu bulabilirsiniz.

BTW ... önbellek engelleme gibi dosyanın zaman damgası kullanabilirsiniz

index.php?p=blabla&v=".filemtime('mystyle.css') 

Xml / / yol / dosya ve bilgi / tamamlama / revizyona bakmak - bilgi svn komutunu çalıştırın. Bu özel dosya değiştiğinde bu son revizyon.

Yukarıdaki kullanarak js / css / img dosyası ve sürüm numarası arasında eşleme oluşturmak için bir yardımcı program yazabilirsiniz. Bu haritalama sonra php yüklenen ve stackoverflow yaptığı gibi bir sorgu dizesi olarak eklenebilir.

Bu yaklaşımın avantajı sürümü kaynak aslında only değişiklik değiştireceği zaman olduğunu. Bu nedenle agresif önbellek başlıkları ayarlayabilirsiniz - aslında hiç için kaynak önbelleğe tarayıcı söylüyorum.