Bagaimana cara saya benar-benar membersihkan cache Safari?

16

Ada banyak waktu di mana saya mengalami masalah setelah saya mengedit HTML di Mac. Masalahnya berasal dari saya mengunggah file yang diperbarui ke server saya melalui FTP, dan saya akan menavigasi ke situs web di Safari. Satu hal yang tidak bertindak dengan benar adalah bahwa Safari telah men-cache halaman web (versi lama), sehingga akan menampilkan versi lama. Saya berpikir sendiri dan memutuskan untuk menghapus cache di Safari berharap itu akan menyelesaikan masalah saya. Membersihkan cache hanya membiarkan situs web tampak memuat ulang. Itu masih muncul dengan versi file yang lama. Untuk membuktikan bahwa file di server benar-benar diperbarui, saya menggunakan Mac lain di jaringan yang sama, dan itu menampilkan versi file yang baru. Tidak peduli berapa kali saya me-refresh atau membersihkan cache atau membuka kembali Safari, itu akan selalu memberikan file yang lama. Satu-satunya solusi yang bisa saya buat adalah reboot. Setelah reboot, Safari memuat ulang seluruh situs web dan menampilkan versi file yang baru.

Saya benar-benar hanya ingin tahu bagaimana cara membersihkan cache Safari dan membuatnya berperilaku dengan benar. Apakah ini sesuatu yang dilakukan sistem operasi (saya juga punya masalah dengan file di harddisk saya)? Saya tidak ingin harus me-reboot sepanjang waktu hanya untuk melihat versi baru file, jadi apakah ada cara saya dapat memastikan saya melihat yang terbaru? Apakah ada folder penyimpanan sementara yang dapat saya hapus secara manual? Ini sering terjadi pada saya (tidak terlalu sering, tetapi cukup bagi saya untuk memperhatikan), dan satu-satunya solusi saya saat ini adalah melakukan reboot.

Saya memiliki perasaan aneh (itu bukan benar-benar sebuah pemikiran, tetapi kemungkinan sangat kecil yang tidak masuk akal) bahwa itu berasal dari tingkat yang lebih rendah.

Andrew Larsson
sumber
Gunakan chrome (atau opera)?
Nama Palsu
Saya lebih suka menggunakan Firefox, tetapi saya sedang mengembangkan, jadi saya perlu menguji situs web saya di semua browser termasuk Safari.
Andrew Larsson
Berguna menggunakan curlperintah baris perintah untuk meminta URL, untuk melihat apa yang muncul. Halaman lama atau baru? Karena curltidak memiliki konsep "caching" apa pun, ini akan memberi tahu Anda jika seseorang di sisi yang jauh (atau jalur antara) melakukan caching yang tidak Anda inginkan. Server Anda mungkin saja penyebab sebenarnya di sini! Apakah ini caching file yang dilayaninya? Betcha itu. . .
Mike Robinson

Jawaban:

13

Di Safari, tahan tombol ( Shift) sambil mengklik tombol segarkan. Ini akan melakukan penyegaran "keras", yang mem-bypass cache lokal.

(Untuk menghapus cache dengan cepat di Safari, tekan + + E, buka Privasi , dan klik “Hapus Semua Data Situs Web” .)

Mathias Bynens
sumber
Saya pasti akan mencoba itu lain kali saya mengalami masalah ini. Itu satu hal yang belum saya lakukan. Saya sudah mencoba mengatur ulang Safari, membersihkan cache, dan bahkan logout dan login kembali. Terima kasih atas jawaban yang bagus!
Andrew Larsson
2
Safari agak membingungkan dalam aspek ini, karena sebagian besar browser lain menggunakan + + Runtuk melakukan penyegaran keras. Di Safari, itu tidak melakukan apa-apa, kecuali Anda memfokuskan Alat Pengembang Web saat melakukan kombo keyboard.
Mathias Bynens
Saya akan menerima jawaban Anda untuk saat ini sampai seseorang datang dengan penjelasan yang lebih baik dengan solusi terbukti untuk caching bodoh yang saya alami. Terima kasih!
Andrew Larsson
1
@AndrewLarsson Bagaimanapun, setelah penyegaran, Anda harus selalu mendapatkan versi terbaru, dengan asumsi tidak ada caching sisi server yang aneh terjadi. Yang mengingatkan saya, header caching apa yang dikirimkan server bersama dengan file? Ini bisa menjadi masalah konfigurasi server.
Mathias Bynens
Itu adalah hal lain yang saya pikirkan. Jika server mengembalikan 304 ketika, pada kenyataannya, itu harus mengembalikan konten baru, itu akan menjadi sesuatu yang saya perlu ubah dalam konfigurasi saya. Saya akan menyelidiki ini saat berikutnya saya menemukan masalah ini.
Andrew Larsson
2

Ketika Safari tidak menghapus cache:

  1. Pastikan Anda telah keluar dari semua halaman web, dan telah menutup semua tab Safari.

  2. Buka Finder dan pilih Go → Go To Folder ... di bilah Menu. (Atau, Anda dapat menggunakan pintasan keyboard, Command+ Shift+ g.)

  3. Salin dan rekatkan yang berikut ke dropdown:

    ~/Library/Safari/Databases

  4. Hapus semua konten yang muncul di folder itu dengan menyorot semua folder dan mengklik kanan dan memilih Pindahkan ke Sampah.

  5. Buka Safari lagi dan periksa apakah semua item sudah dihapus.

  6. Jika tidak ada yang muncul saat Anda mencari kriteria di atas, silakan cari

    ~/Library/Safari/Local Storage

    dan ikuti langkah 4 & 5 di atas untuk menghapus semua konten.

Suzanna
sumber
Perhatikan bahwa meskipun Safari mengatakan, di atas, bahwa itu akan "Hapus Semua Data Situs Web," kenyataannya tidak . Tetapi jika Anda membersihkan isi dari berbagai folder yang disebutkan di sini, itu akan.
Mike Robinson
1

Saya memiliki masalah yang sama persis kecuali saya perhatikan bahwa itu terjadi dengan browser lain juga. Ternyata itu bukan Safari atau OSX itu adalah cache yang dibuat oleh penyedia layanan.

Untuk memecahkan masalah saya memasukkan kode di halaman saya untuk mencegahnya tidak di-cache.

content = "no-cache"

"Beberapa orang tahu tentang caching peramban, tetapi masih kaget dengan caching ISP. Caching ISP bekerja dengan cara yang sama seperti caching peramban. Setelah Anda mengunjungi situs web, ISP Anda mungkin men-cache halaman-halaman tersebut sehingga mereka tampak memuat lebih cepat. lain kali Anda mengunjunginya. Masalah utama dengan hal ini adalah bahwa tidak seperti cache browser Anda, Anda tidak dapat menghapus file-file sementara ini, sebaliknya Anda harus menunggu sampai cache ISP Anda kadaluwarsa dan meminta salinan file-file baru. Ini bisa sangat membuat frustasi jika Anda mencoba mengembangkan atau membuat perubahan pada situs web Anda - atau bahkan untuk melihat informasi baru. "

James
sumber
Bisakah Anda mengembalikan kode lengkap (seperti yang Anda miliki di versi pertama jawabannya)? Jika Anda menempatkan empat spasi di awal baris, seharusnya tidak ada masalah dengan pemformatan.
nohillside
Ini poin yang bagus, dan saya akan mencobanya lain kali. Namun, saya tidak yakin seberapa baik itu berlaku untuk situasi yang saya jelaskan dalam pertanyaan, karena Mac yang saya gunakan keduanya di jaringan yang sama dan memiliki IP global yang sama (sehingga ISP tidak akan dapat menentukan perbedaan di antara mereka).
Andrew Larsson