Bu makale makine çevirisi ayna makalesidir, orijinal makaleye geçmek için lütfen buraya tıklayın.

Görünüm: 11711|Yanıt: 0

[Web sitesi O&M] Web Sitesi Performans Optimizasyonu: Önbellek kontrol ayarlarının ayrıntılı açıklaması

[Bağlantıyı kopyala]
Yayınlandı 7.09.2015 19:30:51 | | | |


HTTP başlığı Süresi Doldu ve Önbellek kontrolü


1. Kavram

Önbellek kontrolü, HTTP önbelleklemesini kontrol etmek için kullanılır (HTTP/1.0'da kısmen uygulanmayabilir, sadece Pragma: önbellekleme yok uygulanır)

Paketteki biçim:

Cache-Control: cache-directive

Önbellek direktifi şu olabilir:

İstek:
| "önbellek yok"
| "Mağaza yok"
| "max-age" "=" delta-saniye
| "max-stale" [ "=" delta-saniye ]
| "min-fresh" "=" delta-saniye
| "dönüşümsüz"
| "sadece önbelleklenmiş olursa"
| "önbellek-uzantısı"


Yanıt:
| "kamu"
| "özel" [ "=" <"> alan adı <"> ]
| "no-cache" [ "=" <"> alan adı <"> ]
| "Mağaza yok"
| "dönüşümsüz"
| "Yeniden Doğrulama Şartı"
| "proxy-revalidate"
| "max-age" "=" delta-saniye
| "s-maxage" "=" delta-saniye
| "önbellek-uzantısı"

Açıklamanın bir kısmı:
Önbelleğe açılabilir ya da olmayan olarak bölünmüş
Public, yanıtın herhangi bir önbellek alanı tarafından önbelleğe alınabileceğini belirtir.
Özel, tek bir kullanıcının yanıt mesajının tamamının veya bir kısmının paylaşılan önbellek tarafından işlenemeyeceğini gösterir. Bu, sunucunun yalnızca kullanıcı
Kısmi yanıt mesajı, diğer kullanıcılardan gelen talepler için geçerli değildir.
no-cache, istek veya yanıt mesajının önbelleğe alınamayacağını gösterir (HTTP/1.0, Pragma'nın no-cache ile değiştirilir)
Önbelleklenebilir olanlara göre
No-store, önemli bilgilerin istemeden yayımlanmasını önlemek için kullanılır. Bir istek mesajı göndermek, istek ve yanıt mesajlarının önbelleğe girmemesini sağlar.
Önbelleğe göre zaman aşımı
max-age, istemcinin ömrü belirli bir süreden (saniyeler) büyük olmayan bir yanıt alabileceğini gösterir.
Min-fresh, istemcinin mevcut süreden daha az yanıt süresi ile belirlenen süreden daha az bir yanıt alabileceğini gösterir.
max-stale, istemcinin zaman aşım süresi ötesinde yanıt mesajlarını alabileceğini gösterir. Max-stale mesajı için bir değer belirlerseniz, istemci
Fazla mesai süresinin belirtilen değerini aşan yanıt mesajları alın.
Süresi dolma, varoluş süresini temsil eder; bu da istemcinin bu saatten önce kontrol etmemesini (isteği vermemesini) sağlar; bu da maksimum yaşla eşdeğerdir
Etkisi. Ama aynı anda varsa, Cache-Control'ün maksimum yaşı tarafından üzerine yazılırlar.
Biçim:
Süresi doldu = "Süresi doldu" ":" HTTP-tarih
Örneğin
Expires: Thu, 01 Dec 1994 16:00:00 GMT (必须是GMT格式)

2. Uygulama
Süresi döndürme ve önbellek kontrolü META üzerinden HTTP üzerinden
<meta http-equiv="Cache-Control" content="max-age=7200" />
<meta http-equiv="Süresi doldu" content="Pzt, 20 Tem 2009 23:00:00 GMT" />
Yukarıdaki ayarlar sadece örneklerdir ve aslında bunlardan birini kullanabilirsiniz. Böyle yazarsanız, sadece web sayfası için geçerlidir, görseller veya web sayfasındaki diğer talepler için geçerli değildir ve önbellek yapmaz.
Bu şekilde, istemci daha fazla isteğe sahip olur ve bu sadece Son Değiştirilme durumunu kontrol eden bir şey olsa da, istek sayısı kesinlikle gezinme hızını etkiler.
Bir dosyaya önbellek eklemek istiyorsanız, Apache'nin mod_expire modülünü kullanabilirsiniz; modül şu şekilde yazılır
<IfModule mod_expires.c>
ExpiresActive On
Süresi dolduVarsayılan "erişim artı 1 gün"
</IfModule>
ExpiresActive'in Açık olduğunu hatırlıyorum, başta açmamıştım ve YSlow ne kadar olursa olsun önbellek mekanizmasını bulamıyorum gibi görünüyor. Böyle eklerseniz, her şeye varsayılan olarak geçer.
Bireysel MIME türlerini hedeflemek istiyorsanız:
ExpiresByType görsel/gif "erişim artı 5 saat 3 dakika"
Bkz. Apache Modül mod_expires
Ayrıca, tarayıcıda Yenile'ye tıkladığınızda, istemci tarafından gönderilen tüm istekler max-age=0 olur, bu da isteğin doğrulanıp sunucuya gönderildiğini gösterir
Önbelleği kontrol etmek için sorarsanız ve önbelleği güncellemenizi isterseniz, genellikle 304 Değiştirilmemiş (Değiştirilmemiş) alırsınız, yani herhangi bir değişiklik yoktur.






Önceki:Yarı zamanlı işler bul ve ekstra para kazan Mükemmel tedavi, nakit ödeme, günde 300'den fazla para ile yarı zamanlı çalışanlar işe alın
Önümüzdeki:Linq'den SQL'e bulanık sorgu gibi
Feragatname:
Code Farmer Network tarafından yayımlanan tüm yazılım, programlama materyalleri veya makaleler yalnızca öğrenme ve araştırma amaçları içindir; Yukarıdaki içerik ticari veya yasa dışı amaçlarla kullanılamaz, aksi takdirde kullanıcılar tüm sonuçları ödemelidir. Bu sitedeki bilgiler internetten alınmakta olup, telif hakkı anlaşmazlıklarının bu siteyle hiçbir ilgisi yoktur. Yukarıdaki içeriği indirmeden sonraki 24 saat içinde bilgisayarınızdan tamamen silmelisiniz. Programı beğendiyseniz, lütfen orijinal yazılımı destekleyin, kayıt satın alın ve daha iyi orijinal hizmetler alın. Herhangi bir ihlal olursa, lütfen bizimle e-posta yoluyla iletişime geçin.

Mail To:help@itsvse.com