15%

Zaoszczędź 15% na wszystkich usługach hostingowych

Sprawdź swoje umiejętności i zdobądź Rabat na dowolny plan hostingowy

Użyj kodu:

Skills
Rozpocznij
21.10.2024

Jak wyczyścić pamięć podręczną przeglądarki Safari na Macu: Wszystkie metody wyjaśnione

Czyszczenie pamięci podręcznej Safari usuwa lokalnie przechowywane kopie zasobów internetowych — obrazy, skrypty, arkusze stylów i odpowiedzi API — które Safari gromadzi w celu przyspieszenia ponownego ładowania stron. Gdy te dane stają się nieaktualne lub uszkodzone, powodują błędy renderowania, pętle logowania, nieaktualne treści stron i wolne działanie. Wyczyszczenie pamięci podręcznej zmusza Safari do pobrania świeżych danych z serwerów źródłowych, co natychmiast rozwiązuje większość tych problemów.

Ten przewodnik omawia wszystkie dostępne metody czyszczenia pamięci podręcznej Safari w systemie macOS, w tym skrót menu Deweloper, pełne czyszczenie danych oparte na Preferencjach, skrót klawiaturowy oraz ręczne usuwanie z systemu plików — wraz z kontekstem technicznym dotyczącym tego, kiedy każde podejście jest odpowiednie.

Co Safari przechowuje w pamięci podręcznej i dlaczego ma to znaczenie

Safari utrzymuje kilka odrębnych warstw przechowywania na dysku, a ich zrozumienie pomaga wybrać właściwą metodę czyszczenia:

  • Pamięć podręczna dysku (com.apple.Safari/WebKitCache): Surowe dane odpowiedzi HTTP — HTML, CSS, JavaScript, obrazy, czcionki. To właśnie na to jest ukierunkowane polecenie „Opróżnij pamięci podręczne”.
  • Pliki cookie (Cookies/Cookies.binarycookies): Tokeny sesji, trwały stan logowania, identyfikatory śledzenia.
  • LocalStorage / IndexedDB: Stan aplikacji po stronie klienta przechowywany przez aplikacje internetowe (np. wersje robocze w Gmailu, zawartość koszyka zakupów).
  • Pamięć podręczna Service Worker: Programowalna warstwa pamięci podręcznej używana przez Progressive Web Apps (PWA). Jest ona oddzielna od pamięci podręcznej dysku HTTP i nie jest czyszczona przez polecenie „Opróżnij pamięci podręczne” w menu Deweloper — to kluczowe rozróżnienie, które większość przewodników pomija.
  • Pamięć podręczna DNS: Obsługiwana na poziomie systemu operacyjnego, nie bezpośrednio przez Safari.

Wiedza o tym, która warstwa powoduje problem, określa, której metody należy użyć.

Porównanie metod czyszczenia pamięci podręcznej Safari

MetodaCzyści pamięć podręczną dyskuCzyści pliki cookieCzyści historięCzyści LocalStorageCzyści pamięć podręczną Service WorkerWymaga menu Deweloper
Deweloper > Opróżnij pamięci podręczneTakNieNieNieNieTak
Skrót Option + Cmd + ETakNieNieNieNieTak
Safari > Wyczyść historięTakTakTakTakNieNie
Ręczne usuwanie z systemu plikówTakNieNieNieNieNie
Safari > Ustawienia > Prywatność > Zarządzaj danymi witrynNieTakNieTakTakNie

Użyj tej tabeli jako macierzy decyzyjnej przed wyborem metody. Jeśli debugujesz PWA lub witrynę korzystającą z Service Workers, żadna ze standardowych opcji czyszczenia pamięci podręcznej nie zresetuje w pełni stanu — musisz użyć opcji Zarządzaj danymi witryn lub karty Aplikacja w Inspektorze WWW.

Metoda 1: Czyszczenie pamięci podręcznej za pomocą menu Deweloper

Menu Deweloper to najszybszy sposób na opróżnienie pamięci podręcznej dysku HTTP Safari bez dotykania plików cookie, zapisanych haseł ani historii przeglądania. Jest to właściwe podejście, gdy strona wyświetla nieaktualne zasoby, ale sesja i stan logowania powinny zostać zachowane.

Krok 1: Włącz menu Deweloper

  1. Otwórz Safari.
  2. Kliknij Safari na pasku menu, a następnie wybierz Ustawienia (macOS Ventura i nowsze) lub Preferencje (macOS Monterey i wcześniejsze). Możesz również nacisnąć Cmd + ,.
  3. Przejdź do karty Zaawansowane.
  4. Zaznacz pole wyboru Pokaż menu Deweloper na pasku menu.

Menu Deweloper pojawi się teraz między Zakładkami a Oknem na pasku menu. To ustawienie jest zachowywane po ponownym uruchomieniu — wystarczy je włączyć tylko raz.

Krok 2: Opróżnij pamięć podręczną

  1. Kliknij Deweloper na pasku menu.
  2. Wybierz Opróżnij pamięci podręczne.

Safari natychmiast czyści pamięć podręczną dysku. Nie pojawia się żadne okno dialogowe z potwierdzeniem i nie jest wymagane ponowne uruchomienie. Operacja jest natychmiastowa, niezależnie od rozmiaru pamięci podręcznej.

Uwaga techniczna: W systemie macOS pamięć podręczna Safari jest przechowywana pod adresem ~/Library/Caches/com.apple.Safari/WebKitCache/. Polecenie „Opróżnij pamięci podręczne” wywołuje bezpośrednio API unieważniania pamięci podręcznej WebKit — nie usuwa po prostu plików, co oznacza, że poprawnie obsługuje integralność pamięci podręcznej i unika pozostawiania osieroconych wpisów indeksu.

Metoda 2: Czyszczenie pamięci podręcznej, historii i wszystkich danych witryn

Użyj tej metody, gdy potrzebujesz kompleksowego resetowania — na przykład podczas rozwiązywania problemów z trwałym logowaniem, usuwania pętli przekierowań związanych z plikami cookie lub przygotowywania profilu przeglądarki do pracy wymagającej prywatności.

Krok 1: Przejdź do opcji Wyczyść historię

  1. Otwórz Safari.
  2. Kliknij Safari na pasku menu.
  3. Wybierz Wyczyść historię.

Krok 2: Wybierz zakres czasu i potwierdź

Pojawi się okno dialogowe z menu rozwijanym oferującym cztery zakresy czasu:

  • Ostatnia godzina
  • Dzisiaj
  • Dzisiaj i wczoraj
  • Cała historia

Wybierz odpowiedni zakres i kliknij Wyczyść historię.

Ta pojedyncza akcja usuwa historię przeglądania, pamięć podręczną dysku HTTP, pliki cookie i inne dane witryn dla wybranego okresu. Nie usuwa zapisanych haseł (przechowywanych w iCloud Keychain), danych Autouzupełniania ani otwartych kart.

Przypadek brzegowy: Jeśli wybierzesz „Ostatnia godzina”, ale uszkodzony wpis pamięci podręcznej został zapisany dwie godziny temu, nie zostanie wyczyszczony. W razie wątpliwości wybierz „Cała historia”, aby wykonać pełny reset.

Metoda 3: Skrót klawiaturowy

Po włączeniu menu Deweloper możesz opróżnić pamięć podręczną w dowolnym momencie bez nawigowania po menu:

Naciśnij Option + Command + E.

Jest to funkcjonalnie identyczne z Deweloper > Opróżnij pamięci podręczne. Jest to szczególnie przydatne podczas aktywnych sesji debugowania, gdy trzeba wielokrotnie opróżniać pamięć podręczną między przeładowaniami strony. Połącz to z Cmd + Shift + R (twarde przeładowanie), aby zmusić Safari do ponownego pobrania wszystkich zasobów z serwera natychmiast po wyczyszczeniu.

Metoda 4: Ręczne usuwanie z systemu plików

Ręczne usuwanie daje bezpośredni dostęp do katalogu pamięci podręcznej, co jest przydatne, gdy:

  • Safari nie odpowiada lub nie można go uruchomić.
  • Chcesz sprawdzić zawartość pamięci podręcznej przed usunięciem.
  • Piszesz skrypt automatyzacji lub wykonujesz konserwację systemu na wielu kontach użytkowników.

Kroki

  1. Całkowicie zamknij Safari. Użyj Cmd + Q lub potwierdź za pomocą Monitora aktywności, że żadne procesy Safari nie są uruchomione. Usuwanie plików pamięci podręcznej podczas aktywności Safari może spowodować uszkodzenie indeksu.
  1. Otwórz Finder. Na pasku menu kliknij Idź > Idź do folderu (lub naciśnij Cmd + Shift + G).
  1. W polu wprowadzania wpisz następującą ścieżkę i naciśnij Return:
~/Library/Caches/com.apple.Safari
  1. W tym katalogu znajdziesz podkatalogi, w tym WebKitCache i potencjalnie fsCachedData. Zaznacz całą zawartość i przenieś ją do Kosza.
  1. Opróżnij Kosz.

Ważne: Nie usuwaj samego katalogu com.apple.Safari — tylko jego zawartość. Usunięcie katalogu nadrzędnego może spowodować utratę konfiguracji pamięci podręcznej przez Safari i wywołać krótką ponowną inicjalizację przy następnym uruchomieniu, co jest nieszkodliwe, ale niepotrzebne.

Do automatyzacji równoważne polecenie powłoki to:

rm -rf ~/Library/Caches/com.apple.Safari/WebKitCache/

Uruchom to tylko wtedy, gdy Safari nie jest uruchomione. Możesz sprawdzić, czy Safari jest zamknięte przed wykonaniem:

pgrep -x Safari || rm -rf ~/Library/Caches/com.apple.Safari/WebKitCache/

Ta metoda jest często pomijana, ale jest niezbędna do czyszczenia pamięci podręcznych Service Worker i LocalStorage dla poszczególnych witryn — dwóch warstw, które standardowe metody czyszczenia pamięci podręcznej całkowicie pomijają.

  1. Otwórz Ustawienia / Preferencje Safari (Cmd + ,).
  2. Przejdź do karty Prywatność.
  3. Kliknij Zarządzaj danymi witryn.
  4. Użyj pola wyszukiwania, aby znaleźć konkretną domenę, lub kliknij Usuń wszystko, aby wyczyścić wszystkie przechowywane dane witryn.
  5. Kliknij Gotowe.

Jest to jedyna wbudowana metoda interfejsu użytkownika Safari, która usuwa rejestracje Service Worker i powiązane z nimi pamięci podręczne. Jeśli Progressive Web App działa nieprawidłowo po aktualizacji, jest to właściwe rozwiązanie.

Jak czyszczenie pamięci podręcznej wiąże się z konfiguracją serwera WWW i hostingu

Zachowanie pamięci podręcznej to równanie dwustronne. Nawet po wyczyszczeniu lokalnej pamięci podręcznej Safari serwer WWW może nakazać przeglądarce natychmiastowe ponowne buforowanie treści za pomocą nagłówków Cache-Control i Expires. Jeśli zarządzasz witryną i Twoi użytkownicy zgłaszają nieaktualne treści, rozwiązanie leży po stronie serwera — konkretnie w dostosowaniu dyrektyw kontroli pamięci podręcznej w konfiguracji serwera WWW lub ustawieniach CDN.

Na przykład w środowisku Hostingu VPS z Nginx kontrolujesz zachowanie buforowania na poziomie nagłówków odpowiedzi:

location ~* .(css|js|png|jpg|woff2)$ {
    expires 30d;
    add_header Cache-Control "public, immutable";
}

W środowiskach deweloperskich i testowych, gdzie potrzebujesz, aby przeglądarki nigdy nie buforowały odpowiedzi, użyj:

add_header Cache-Control "no-store, no-cache, must-revalidate";

Jeśli korzystasz z Serwera Dedykowanego i używasz panelu sterowania takiego jak cPanel, te nagłówki można skonfigurować za pomocą .htaccess lub bezpośrednio w konfiguracji wirtualnego hosta Apache. Połączenie właściwych nagłówków pamięci podręcznej po stronie serwera z czyszczeniem pamięci podręcznej po stronie klienta to właściwe podejście do kompleksowego rozwiązywania trwałych problemów z buforowaniem.

W przypadku witryn zabezpieczonych HTTPS — co wpływa na sposób obsługi buforowanych zasobów przez przeglądarki, szczególnie w przypadku nagłówków Strict-Transport-Security — upewnij się, że Twoje Certyfikaty SSL są ważne i prawidłowo skonfigurowane. Wygasły lub błędnie skonfigurowany certyfikat SSL może spowodować, że Safari odmówi buforowania zasobów i wyświetli błędy połączenia, które imitują uszkodzenie pamięci podręcznej.

Jeśli zarządzasz wieloma domenami lub subdomenami, każdą z własnym zakresem pamięci podręcznej, utrzymanie dokładnej Rejestracji Domeny i rekordów DNS zapewnia prawidłowe rozwiązywanie strategii busting pamięci podręcznej (takich jak wersjonowane adresy URL zasobów) we wszystkich środowiskach.

Rozwiązywanie problemów: gdy czyszczenie pamięci podręcznej nie rozwiązuje problemu

Jeśli wyczyszczenie pamięci podręcznej nie rozwiązuje problemu, przejdź przez tę listę diagnostyczną:

  • Nadal widzisz starą zawartość? Serwer może zwracać odpowiedź 304 Not Modified na podstawie nagłówków ETag lub Last-Modified. Użyj Inspektora WWW Safari (Deweloper > Pokaż Inspektor WWW > karta Sieć) i sprawdź kody statusu odpowiedzi. Kod 304 oznacza, że serwer potwierdził aktualność wersji w pamięci podręcznej — problem leży po stronie serwera, nie przeglądarki.
  • Pętla logowania utrzymuje się po wyczyszczeniu pamięci podręcznej? Prawdopodobnie musisz również wyczyścić pliki cookie. Użyj Metody 2 lub Metody 5.
  • PWA nie aktualizuje się? Service Worker wyświetla buforowane zasoby. Użyj Metody 5 (Zarządzaj danymi witryn) lub otwórz Inspektor WWW > Aplikacja > Service Workers i kliknij „Wyrejestruj”.
  • Folder pamięci podręcznej jest pusty, ale wydajność nadal jest słaba? Wąskim gardłem może być opóźnienie sieci, czas rozwiązywania DNS lub czas odpowiedzi serwera — nie lokalna pamięć podręczna. Użyj karty Sieć w Inspektorze WWW, aby zidentyfikować rzeczywiste źródło opóźnienia.
  • ~/Library/Caches/com.apple.Safari nie istnieje? W systemie macOS Sonoma i nowszych z Safari 17+ niektóre ścieżki pamięci podręcznej zostały zreorganizowane w ~/Library/Containers/com.apple.Safari/Data/Library/Caches/. Jeśli standardowa ścieżka jest pusta, sprawdź tę ścieżkę kontenera.

W przypadku systemu macOS Sonoma i nowszych prawidłowa ścieżka ręczna to:

~/Library/Containers/com.apple.Safari/Data/Library/Caches/

Techniczne podsumowanie — lista kontrolna

Przed wyczyszczeniem pamięci podręcznej Safari zidentyfikuj dokładny problem, aby wybrać właściwą metodę:

  • Użyj Deweloper > Opróżnij pamięci podręczne (Option + Cmd + E) w przypadku nieaktualnych zasobów wizualnych bez utraty stanu sesji.
  • Użyj Safari > Wyczyść historię > Cała historia do pełnego resetowania przeglądarki, w tym plików cookie i historii.
  • Użyj Prywatność > Zarządzaj danymi witryn w przypadku pamięci podręcznej Service Worker, IndexedDB i LocalStorage — szczególnie w przypadku problemów z PWA.
  • Używaj ręcznego usuwania z systemu plików tylko wtedy, gdy Safari jest całkowicie zamknięte; celuj w zawartość WebKitCache, nie w katalog nadrzędny.
  • W systemie macOS Sonoma+ sprawdź ~/Library/Containers/com.apple.Safari/Data/Library/Caches/, jeśli standardowa ścieżka pamięci podręcznej wydaje się pusta.
  • Po wyczyszczeniu pamięci podręcznej klienta sprawdź, czy nagłówki Cache-Control po stronie serwera są prawidłowo skonfigurowane, aby zapobiec natychmiastowemu ponownemu buforowaniu nieaktualnych treści.
  • Jeśli zarządzasz serwerem WWW, używaj wersjonowanych nazw plików zasobów (np. style.v2.css) jako strategii busting pamięci podręcznej, która działa niezależnie od ustawień pamięci podręcznej po stronie klienta.

FAQ

Czy wyczyszczenie pamięci podręcznej Safari usuwa zapisane hasła?

Nie. Zapisane hasła są przechowywane w iCloud Keychain, który jest całkowicie oddzielony od pamięci podręcznej przeglądarki, plików cookie i historii przeglądania. Żadna z opisanych tutaj metod czyszczenia pamięci podręcznej nie wpływa na zapisane dane uwierzytelniające.

Dlaczego pamięć podręczna Safari szybko się zapełnia po wyczyszczeniu?

Safari ponownie buforuje zasoby przy każdej wizycie na stronie zgodnie z dyrektywami Cache-Control serwera. Intensywne przeglądanie, witryny z dużą ilością multimediów i aplikacje internetowe z agresywnymi zasadami buforowania zapełnią pamięć podręczną w ciągu kilku godzin. Jest to normalne zachowanie — pamięć podręczna działa zgodnie z przeznaczeniem.

Czy „Opróżnij pamięci podręczne” w menu Deweloper czyści pamięci podręczne Service Worker?

Nie. Polecenie „Opróżnij pamięci podręczne” w menu Deweloper dotyczy tylko pamięci podręcznej dysku HTTP (pamięci podręcznej zasobów WebKit). Pamięci podręczne Service Worker są zarządzane oddzielnie przez API Cache Storage przeglądarki. Aby je wyczyścić, użyj Safari Ustawienia > Prywatność > Zarządzaj danymi witryn lub użyj panelu Aplikacja w Inspektorze WWW, aby wyrejestrować konkretne Service Workers.

Jak wyczyścić pamięć podręczną Safari w systemie macOS Sonoma, jeśli brakuje standardowej ścieżki pamięci podręcznej?

W systemie macOS Sonoma i Safari 17+ pamięć podręczna może być przechowywana wewnątrz kontenera aplikacji pod adresem ~/Library/Containers/com.apple.Safari/Data/Library/Caches/. Przejdź tam za pomocą okna dialogowego Idź do folderu w Finderze lub terminala i usuń zawartość podkatalogu WebKitCache przy całkowicie zamkniętym Safari.

Czy mogę zautomatyzować czyszczenie pamięci podręcznej Safari według harmonogramu za pomocą narzędzi macOS?

Tak. Możesz użyć launchd do zaplanowania skryptu powłoki, który uruchamia rm -rf ~/Library/Caches/com.apple.Safari/WebKitCache/ (lub ścieżkę kontenera Sonoma) w określonych odstępach czasu. Utwórz plik listy właściwości w ~/Library/LaunchAgents/ z kluczem StartCalendarInterval. Upewnij się, że zadanie jest uruchamiane tylko wtedy, gdy Safari nie jest aktywne, dodając do skryptu sprawdzenie pgrep, jak pokazano w sekcji ręcznego usuwania powyżej.

15%

Zaoszczędź 15% na wszystkich usługach hostingowych

Sprawdź swoje umiejętności i zdobądź Rabat na dowolny plan hostingowy

Użyj kodu:

Skills
Rozpocznij