En az iki tarayıcı - Chrome ve Firefox - son kullanma tarihi olmayan 301 yönlendirmesini önbelleğe alır .
Yani, tarayıcının önbelleği barındırabildiği sürece önbelleğe alınmış olarak kalacaktır. Önbelleği manuel olarak temizlerseniz veya önbellek girişleri yenileri için yer açmak üzere temizlenirse önbellekten kaldırılır.
Bunu en azından Firefox'ta doğrulayıp about:cache
disk önbelleği altında bularak doğrulayabilirsiniz .
IE10 / IE11 gibi diğer tarayıcıların davranışlarını bilmiyorum. Ancak, diğer tarayıcıların süresiz olarak önbelleğe aldığı göz önüne alındığında, bunun için yine de uyum sağlamanız gerekecektir.
Chrome / Firefox dahil olmak üzere tüm tarayıcılarda, aşağıda açıklandığı gibi üstbilgileri kullanarak bu varsayılan davranışı geçersiz kılmak mümkündür:
Not: Bu yanıt 2014 yılında yazılmıştır ve tarayıcı davranışı zaman içinde değişebilir.
Yönlendirmenin önbelleğe alınmasını istemiyorsanız
Bu belirsiz önbellekleme, Önbellek Denetimi üstbilgileri olmadan bu tarayıcılar tarafından yalnızca varsayılan önbellekleme işlemidir. Mantık, "kalıcı" bir yönlendirme belirtmeniz ve onlara diğer önbellekleme talimatlarını vermemenizdir;
Tarayıcılar, belirtilirlerse diğer yanıtlarda olduğu gibi Önbellek Denetimi ve Sona Erme başlıkları da geçerli olur.
301 yönlendirmelerinize Cache-Control: max-age=3600
veya gibi üstbilgiler ekleyebilirsiniz Expires: Thu, 01 Dec 2014 16:00:00 GMT
. Hatta ekleyebilir Cache-Control: no-cache
tarayıcı tarafından kalıcı olarak önbelleğe olmayacak kadar Cache-Control: no-store
böylece bile tarayıcı tarafından geçici depolama saklanan edilemez.
Bence daha iyi bir alternatif 302 veya 307 yönlendirmesi kullanmak. Bunlar, tarayıcılara veya önbelleklere "kalıcı" yönlendirmeler oldukları anlamına gelmez ve bu nedenle Önbellek Kontrolü başlıklarının yokluğunda önbelleğe alınmamalıdır.
Bana göre, bir 301 yönlendirmesi yayınlamak gibi görünüyor, ancak önbelleğe alınamaz olarak işaretlemek, teknik olarak geçerli olsa bile 301 yönlendirmesinin ne olduğu ruhuna aykırı . YMMV ve "kalıcı" bir yönlendirmenin bir zaman sınırına sahip olmasının mantıklı olduğu uç durumlar bulabilirsiniz.
Daha önce 301 yönlendirmesi yayınlamış ancak bunu yapmak istiyorsanız
İnsanlar tarayıcılarında hala önbelleğe alınmış 301 yönlendirmesini kullanıyorsa, kaynak sayfanın hala yönlendirmeye sahip olup olmadığına bakılmaksızın hedef sayfaya yönlendirilmeye devam ederler. Bunu düzeltmek için seçenekleriniz şunları içerir:
En basit ve en iyi çözüm tekrar 301 yönlendirmesi daha yapmaktır.
Tarayıcı, daha önce kaldırılmış bir URL olduğunu düşündüğü şeye yönlendirildiğini fark edecektir ve bu, eski yönlendirmenin hala orada olmadığını doğrulamak için URL'yi tekrar almasına neden olmalıdır.
Düzenleme: Bazı yorumlar bu konuda şüphe uyandırır, aşağıya bakın.
Önceki yönlendirme hedefinin gittiği site üzerinde kontrolünüz yoksa, şansınız kalmaz. Site sahibine size yeniden yönlendirmek için yalvarın.
Ayrıca önleme tedaviden daha iyidir - eski URL'yi kalıcı olarak kaldırmak istediğinizden emin değilseniz 301 yönlendirmesinden kaçının.