SORU
3 ŞUBAT 2012, Cuma


Ne kadar tarayıcılar önbellek HTTP 301 leri kullanın mı?

HTTP 301 Kalıcı Yönlendirme ile ilgili bir sorun hata ayıklama ediyorum. Hızlı bir test sonra, Safari yeniden başlatıldığında 301 leri kullanın onun önbelleğini temizler gibi görünüyor, ama Firefox değil.

IE, Chrome, Firefox ve Safari 301 leri kullanın kendi önbelleği temizlemek?

GÜNCELLEME: example2.com, example1.com yönlendirmek istiyorum, örneğin, ama kazara bir sorun olduğunu example3.com, yönlendirmek için ayarlayın. Ben doğru yanlış, ama kimse kim ziyaret etti example1.com Bu arada olacak önbelleğe alınan yanlış yönlendirmek example3.com ve çok makul olduğunu ulasabilen ya example1.com example2.com kadar kendi önbellek temizlenir. Araştırma sonucu, Cache-Control Expires üstbilgi kümesi vardı hayır. Hatalı 301 yanıt başlıklarını böyle olması gerek

HTTP/1.1 301 Moved Permanently
Date: Wed, 27 Feb 2013 12:05:53 GMT
Server: Apache/2.2.21 (Unix) DAV/2 PHP/5.3.8
X-Powered-By: PHP/5.3.8
Location: http://example3.com/
Content-Type: text/html

Benim kendi testleri gösteriyor:

  • IE 7, IE8, Android 2.3.4 değil cache yapın.
  • 18.0.2, Safari 5.1.7 (Windows 7), ve Opera 12.14 tüm Firefox önbellek ve tarayıcı önbelleğini yeniden temizleyin.
  • IE10 ve Krom 25 önbellek, ama başlatın, temizlemeyinne zaman belli olacak?

CEVAP
28 Ocak 2014, Salı


Chrome ve Firefox 301 yönlendirmesi ile önbelleğe alırson kullanma tarihi.

Yani, önbellekteki tarayıcı önbelleğini bunu taşıyamaz sürece kalır. Eğer el ile önbelleği temizlemek durumunda, önbellek kayıtları, yeni olanlar için yer açmak için temizlendi, önbellekten kaldırılır.

11 ** ve disk önbelleği altında bularak en azından Firefox bunu doğrulayabilirsiniz.

Diğer tarayıcılar, IE10/İE11 gibi davranışları hakkında bir bilgim yok. Ama önbelleğe, sadece/Firefox Chrome gibi sonra Eğer hala aşağıda açıklandığı gibi geçersiz kılmak mümkün başlıklarını kullanarak olmalıdır:

Yeniden önbelleğe alınmasını istemiyorsanız

Bu belirsiz önbellekleme sadecevarsayılanCache-Control yokluğunda bu tarayıcılar tarafından önbelleğe alma başlıkları. Bu mantık "" Yönlendirme ve eğer isteseydin gibi davranacaklar bu yüzden onlara herhangi bir önbelleğe alma talimatı vererek, süresiz olarak önbelleğe değil. kalıcı belirterek olmasıdır

Tarayıcılar hala Cache-Control onur ve başlıklar halinde belirtilen eğer başka bir yanıt gibi, Sona eriyor.

301 yönlendirmeleri için Cache-Control: max-age=3600 Expires: Thu, 01 Dec 2014 16:00:00 GMT gibi başlıklar ekleyebilirsiniz. Hatta tarayıcı tarafından geçici depolama alanında saklanabilir. bu yüzden kalıcı bir tarayıcı veya Cache-Control: no-store tarafından önbelleğe olmayacak Cache-Control: no-cache ekleyebilirsiniz.

Bence daha iyi bir alternatif, ancak, 302 veya 307 yönlendirme kullanmaktır. Bu" yönlendirir ve böylece Önbellek-Kontrol başlıklarını. yokluğunda önbelleğe olmamalı "kalıcı olduklarını tarayıcılar veya önbelleğe ima yok

Bana, 301 yönlendirmesi veren ama olmayan olduğu saptanırsa olarak işaretleme karşı gidiyor gibi görünüyorruhne 301 yönlendirmesi teknik olarak geçerli olsa bile. YMMV, ve bir "kalıcı" yönlendirme bir zaman sınırı. için mantıklı kenar durumlarda bulabilirsiniz

Daha önce 301 yönlendirmesi verilen ancak BM bunu istiyorsanız

Eğer insanlar hala kendi tarayıcısında önbelleğe 301 yeniden yönlendirme hedef sayfa için kaynak sayfa hala yerinde yönlendirmek ne olursa olsun alınmaya devam edecektir. Bunu gidermek için seçenekleri vardır:

  • En basit ve en iyi çözüm başka bir 301 yönlendirme tekrar sorun.

    Tarayıcı olacak fark ediliyor yönelik geri ne bunu daha önce düşünmüş bir de iş verdi, URL, ve bu neden re-fetch URL yeniden onaylamak eski yönlendirme değil hala orada.

  • Eğer önceki yönlendirme hedefi için gittiği site üzerinde kontrol yok eğer doğru değilse, o zaman şansını kaybettin. Deneyin ve site sahibi için geri yönlendirmek için yalvarıyorum.

Ayrıca önleme tedavi - istersen eminseniz değil 301 yönlendirmesi önlemek kalıcı olarak daha iyi de-Komisyonu eski URL.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Adam Khoury

    Adam Khoury

    23 Ocak 2008
  • HSmasteryoda .

    HSmasteryoda

    22 Ocak 2010
  • listedabive

    listedabive

    30 Ocak 2007