Safari'nin önbelleğini gerçekten nasıl temizlerim?


16

Mac'te HTML'yi düzenledikten sonra bir sorunla karşılaştığım sayısız zaman oldu. Sorun, güncellenmiş dosyayı FTP yoluyla sunucuma yüklerken benden geliyor ve Safari'deki web sitesine gideceğim. Düzgün çalışmayan tek şey, Safari'nin web sayfasını (eski sürüm) zaten önbelleğe almasıydı, bu nedenle eski sürümü görüntüleyecekti. Kendi kendime düşündüm ve sorunumu çözeceğini umarak Safari'deki önbelleği temizlemeye karar verdim. Önbelleği temizlemek yalnızca web sitesinin yeniden yüklenmesine izin verir. Hala dosyanın eski sürümü ile geldi. Sunucudaki dosyanın gerçekten güncellendiğini kanıtlamak için, aynı ağdaki başka bir Mac'e girdim ve dosyanın yeni sürümünü görüntüledi. Önbelleği kaç kez yenilediğim veya temizlediğim veya yeniden açtığım önemli değil, her zaman eski dosyayı teslim eder. Gelebileceğim diğer tek çözüm yeniden başlatmaktı. Yeniden başlattıktan sonra, Safari tüm web sitesini yeniden yükledi ve dosyanın yeni sürümünü gösterdi.

Gerçekten Safari'nin önbelleğini nasıl temizleyeceğini ve düzgün çalışmasını merak ediyorum. Bu işletim sisteminin yaptığı bir şey mi (sabit diskimdeki dosyalarla da benzer sorunlar yaşadım)? Bir dosyanın yeni bir sürümünü görmek için her zaman yeniden başlatmak istemiyorum, bu yüzden en yeni olanı görüntülediğimden emin olmanın herhangi bir yolu var mı? Manuel olarak temizleyebileceğim geçici bir depolama klasörü var mı? Bu bana çok sık oluyor (çok sık değil, fark etmem yeterli) ve şu andaki tek çözümüm yeniden başlatmak.

Garip bir his var (gerçekten bir düşünce değil, ama çok mantıklı olmayan çok hafif bir olasılık) daha düşük bir seviyeden geliyor.


Chrome (veya opera) kullanılsın mı?
Sahte Adı

Firefox kullanmayı tercih ederim, ancak gelişiyorum, bu yüzden web sitemi Safari dahil tüm tarayıcılarda test etmem gerekiyor.
Andrew Larsson

Kullanımı yararlı olabilir curlgörmek için bir URL talebinde bulunmak komut satırı komutu o ile geliyor. Eski sayfa mı yeni mi? Yana curlhiç "önbelleğe alma" şey kavramı yok uzak tarafı (veya arasındaki yolu) üzerinde birisi istemediğini önbelleğe alma yapıyorsa, bu size söyleyecektir. Sunucunuz burada asıl suçlu olabilir! Sunulan dosyaları önbelleğe alıyor mu? Betcha öyle. . .
Mike Robinson

Yanıtlar:


14

Safari'de, yenile düğmesini tıklarken ( Shift) tuşunu basılı tutun . Bu, yerel önbelleği atlayan "zor" bir yenileme gerçekleştirir.

(Safari'deki önbelleği hızla temizlemek için + + tuşlarına basın E, Gizlilik'e gidin ve “Tüm Web Sitesi Verilerini Kaldır” ı tıklayın .)


Kesinlikle bir dahaki sefere bu sorunla karşılaşırsanız deneyeceğim. Bu henüz yapmadığım bir şey. Safari'yi sıfırlamayı, önbelleği temizlemeyi ve hatta oturumu kapatıp tekrar giriş yapmayı denedim. Harika yanıt için teşekkürler!
Andrew Larsson

2
Diğer tarayıcıların çoğu sert bir yenileme yapmak için + + kullandığından Safari bu açıdan biraz kafa karıştırıcıdır R. Safari'de, klavye birleşimini gerçekleştirirken Web Geliştirici Araçları'na odaklanmadığınız sürece hiçbir şey yapmaz.
Mathias Bynens

Birisi, yaşadığım cahil önbelleğe kanıtlanmış bir çözümle daha iyi bir açıklama getirene kadar cevabınızı kabul edeceğim. Teşekkürler!
Andrew Larsson

1
@AndrewLarsson Her neyse, sert bir yenilemeden sonra, her zaman garip bir sunucu tarafı önbellekleme olmadığı varsayılarak en son sürümü almalısınız. Hangisi bana hatırlatıyor, sunucu dosyayla birlikte hangi önbellek başlıklarını gönderiyor? Bir sunucu yapılandırma sorunu olabilir.
Mathias Bynens

Bu düşündüğüm başka bir şeydi. Aslında yeni içerik döndürmesi gerektiğinde sunucu bir 304 döndürüyorsa, yapılandırmamda değiştirmem gereken bir şey olurdu. Bu sorunla bir daha karşılaştığımda bunu araştıracağım.
Andrew Larsson

2

Safari önbelleği temizlemediğinde:

  1. Tüm web sayfalarından çıkış yaptığınızdan ve tüm Safari sekmelerini kapattığınızdan emin olun.

  2. Finder'ı açın ve Menü çubuğunda Git → Klasöre Git ... seçeneğini belirleyin. (Alternatif olarak, Command+ Shift+ klavye kısayolunu kullanabilirsiniz g.)

  3. Aşağıdakileri kopyalayıp açılır menüye yapıştırın:

    ~/Library/Safari/Databases

  4. Tüm klasörleri vurgulayıp Çöp Kutusuna Taşı'yı seçip o klasörde görünen tüm içeriği silin.

  5. Safari'yi tekrar açın ve tüm öğelerin silinip silinmediğini kontrol edin.

  6. Yukarıdaki ölçütleri ararken hiçbir şey görünmezse, lütfen

    ~/Library/Safari/Local Storage

    ve tüm içeriği silmek için yukarıdaki 4. ve 5. adımları izleyin.


Safari, yukarıda, "Tüm Web Sitesi Verilerini Kaldır" yazacağını söylese de, gerçekte gerçekten yapmadığıdır . Ancak burada belirtilen çeşitli klasörlerin içeriğini temizlerseniz, silinir.
Mike Robinson

1

Ben de aynı sorunu yaşadım dışında diğer tarayıcılarda da olduğunu fark ettim. Görünüşe göre Safari veya OSX değildi, servis sağlayıcı tarafından oluşturulan bir önbellekti.

Sorunu çözmek için önbelleğe alınmasını önlemek için sayfama kod koydum.

content = "no-cache"

"Bazı insanlar tarayıcı önbelleğe almayı biliyor, ancak yine de ISS önbellekleme tarafından şaşkına dönüyor. ISS önbellekleme, tarayıcı önbelleğe alma ile aynı şekilde çalışır. Bir web sitesini ziyaret ettiğinizde, ISS'niz bu sayfaları önbelleğe alabilir, böylece Bununla ilgili ana sorun, tarayıcı önbelleğinizin aksine bu geçici dosyaları silemeyeceğinizdir, bunun yerine ISS'lerin önbelleğinin süresinin dolmasını ve dosyaların yeni kopyalarını istemesini beklemeniz gerekir. web sitenizi geliştirmeye veya üzerinde değişiklik yapmaya, hatta yeni bilgilere bakmaya çalışıyorsunuz. "


Lütfen tam koda dönebilir misiniz (cevabın ilk sürümünde olduğu gibi)? Satırın başına dört boşluk koyarsanız, biçimlendirmeyle ilgili herhangi bir sorun olmamalıdır.
nohillside

Bu iyi bir nokta ve bir dahaki sefere deneyeceğim. Ancak, soruda tarif ettiğim duruma ne kadar iyi uygulanacağından emin değilim, çünkü kullandığım Mac'ler aynı ağda ve aynı global IP'ye sahipti (bu nedenle ISS, aralarındaki fark).
Andrew Larsson
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.