Panduan Isoline
Memahami kuki, storan setempat, cache dan cap jari pelayar
Kuki, storan setempat dan cache ialah keadaan yang disimpan pelayar. Cap jari pelayar dibentuk daripada isyarat yang dapat diperhatikan, jadi pemadaman data tersimpan hanya menangani sebahagian daripada isyarat pengenalan.
Konsep ini sering muncul bersama dalam tetapan privasi, arahan penyahpepijatan dan produk profil pelayar. Tingkah lakunya cukup berbeza sehingga arahan ‘kosongkan pelayar’ sahaja tidak lengkap.
Gambaran cara setiap mekanisme berfungsi
| Mekanisme | Siapa mencipta atau mengawalnya | Skop biasa | Tujuan lazim | Dihantar secara automatik bersama permintaan? |
|---|---|---|---|---|
| Kuki HTTP | Pelayan menetapkannya; pelayar menyimpan dan memulangkannya mengikut peraturan skop | Hos atau domain, laluan, jangka hayat dan syarat sambungan | Pengecam sesi, keutamaan, keadaan pencegahan penyalahgunaan | Ya, apabila permintaan sepadan dengan skop |
localStorage |
JavaScript laman | Origin, tertakluk pada pembahagian dan dasar pelayar | Keadaan aplikasi pasangan kunci-nilai yang berterusan | Tidak |
sessionStorage |
JavaScript laman | Origin dalam sesi penyemakan imbas peringkat teratas | Keadaan sementara tab atau aliran kerja | Tidak |
| Cache HTTP | Pelayar dan peraturan pengcachean HTTP | Kunci cache, arahan respons, dasar pelayar | Menggunakan semula respons untuk mengurangkan kependaman dan trafik | Boleh memenuhi permintaan atau mengesahkannya semula |
| API Cache Storage | JavaScript laman atau service worker | Origin atau bahagian storan | Sumber luar talian dan respons yang diurus aplikasi | Tiada penyertaan automatik; skrip mengawal penggunaannya |
| Cap jari pelayar | Laman atau pemerhati lain mengukur isyarat | Bergantung pada pemerhati dan isyarat | Keselamatan, pengesanan penipuan, analitik atau penjejakan | Sesetengah isyarat kelihatan dalam permintaan; yang lain memerlukan kod aktif |
Lima baris pertama melibatkan keadaan yang disimpan. Baris terakhir ialah kaedah pemerhatian dan korelasi, walaupun keadaan tersimpan juga boleh menjadi salah satu inputnya.
Kuki: keadaan untuk pelayan dengan peraturan skop
HTTP sendiri pada asasnya tidak mengekalkan keadaan. Kuki membolehkan pelayan memberikan pasangan nama-nilai kepada pelayar dan menerimanya semula pada permintaan seterusnya yang sepadan. RFC 6265 mentakrifkan pengepala respons Set-Cookie, pengepala permintaan Cookie dan model penyimpanan pelayar.
Kuki boleh mempunyai sifat berikut:
- Mengikut sesi: disimpan sehingga sesi yang ditentukan pelayar tamat.
- Berterusan: mempunyai tarikh luput atau usia maksimum.
- Hos sahaja: dipulangkan hanya kepada hos yang menetapkannya.
- Mengikut domain: layak dihantar kepada domain yang ditentukan dan subdomain sepadan.
- Mengikut laluan: dipulangkan hanya untuk laluan permintaan sepadan.
- Secure: dipulangkan hanya melalui saluran selamat seperti yang ditentukan pelayar.
- HttpOnly: tidak tersedia melalui API kuki untuk skrip, tetapi masih tersedia bagi permintaan HTTP.
Atribut ini mempengaruhi penghantaran dan akses skrip. Ia tidak menjadikan nilai kuki satu sempadan keselamatan tersendiri. RFC 6265 secara khusus memberi amaran agar tidak bergantung pada atribut Path untuk keselamatan, dan mengesyorkan penghantaran data melalui saluran selamat serta perlindungan tambahan bagi kandungan kuki sensitif.
Mengapa pemadaman kuki melog anda keluar
Banyak perkhidmatan menyimpan pengecam sesi rawak dalam kuki, manakala rekod akaun dan butiran sesi berada pada pelayan. Memadam kuki itu membuang salinan pengecam dalam pelayar, jadi permintaan seterusnya tidak lagi mengemukakan sesi yang sama. Akaun pada pelayan dan sesi lain mungkin masih wujud.
Ini juga menjelaskan sebab penyalinan kuki pengesahan bersifat sensitif. Pengecam sesi yang masih boleh digunakan mungkin bertindak seperti bukti kelayakan. Jangan tampal kuki mentah ke dalam tiket, log, output automasi atau sembang pasukan.
Storan setempat: keadaan satu origin yang dikawal skrip
Piawaian HTML mentakrifkan localStorage sebagai akses ke kawasan storan setempat sesuatu origin. Ia direka untuk digunakan merentas tetingkap dan kekal selepas sesi semasa. Storan itu mengandungi pasangan kunci-nilai berbentuk rentetan dan tersedia kepada skrip yang mempunyai akses kepada origin tersebut.
Origin biasanya menggabungkan skim, hos dan port. Oleh itu, contoh berikut mempunyai skop storan berbeza:
https://app.example.testhttp://app.example.testhttps://admin.example.testhttps://app.example.test:8443
Laluan URL bukan sebahagian daripada origin. Halaman /billing/ dan /support/ pada origin yang sama boleh mencapai kawasan storan setempat yang sama kecuali aplikasi mewujudkan pengasingan logiknya sendiri.
Berbeza daripada kuki, entri localStorage tidak disertakan secara automatik pada permintaan HTTP. Skrip laman mesti membacanya dan menentukan kegunaannya. Ini berguna untuk keutamaan antara muka, keadaan draf dan data aplikasi, tetapi mana-mana skrip yang berjalan dengan kuasa origin itu mungkin dapat mengaksesnya. Reka bentuk sesi sensitif perlu mengambil kira skrip yang terjejas, bukan menganggap ‘setempat’ bermaksud rahsia.
Pengekalan di sini bermaksud data boleh kekal selepas satu sesi pelayaran. Ia tidak bermaksud penyimpanan selama-lamanya. Pengguna boleh memadamkannya, dasar pelayar boleh mengehadkannya, dan pelayar boleh menguatkuasakan peraturan storan serta pengeluaran data.
Jangka hayat sessionStorage berbeza
sessionStorage dikaitkan dengan origin dan sesi penyemakan imbas peringkat teratas. Ia sesuai untuk keadaan yang perlu kekal sepanjang aliran kerja tab atau tetingkap, kemudian tamat bersama sesi itu. Tab yang diklon atau dipulihkan boleh mempunyai butiran kitar hayat khusus pelayar, jadi aplikasi tidak sepatutnya menggunakannya sebagai satu-satunya rekod kerja penting.
Storan setempat hanyalah satu mekanisme data laman
Aplikasi web moden juga boleh menyimpan data dalam IndexedDB, Cache Storage, pendaftaran service worker, Origin Private File System, kebenaran dan stor lain yang diurus pelayar. Mengosongkan localStorage sahaja dalam alat pembangun boleh meninggalkan keadaan lain tanpa perubahan.
Panduan privasi Piawaian HTML mengesyorkan pelayar membolehkan pengguna memadam mekanisme storan berterusan bersama-sama. Jika tidak, laman boleh menggunakan satu stor untuk mencipta semula pengecam yang telah dibuang daripada stor lain.
Cache: satu istilah, beberapa mekanisme
Cache HTTP
RFC 9111 mentakrifkan cache HTTP sebagai stor mesej respons bersama sistem yang mengawal penyimpanan, pengambilan dan pemadamannya. Cache pelayar boleh menggunakan semula respons yang masih segar atau mengesahkan semula respons lapuk, lalu mengurangkan kependaman dan pemindahan rangkaian.
Kunci cache merangkumi sekurang-kurangnya kaedah permintaan dan URI sasaran. Pengepala respons mempengaruhi sama ada respons boleh digunakan semula dan untuk berapa lama. Cache HTTP ialah lapisan pengoptimuman. Imej atau skrip dalam cache biasanya tidak bermaksud pengguna telah log masuk.
Keadaan cache masih boleh mempengaruhi privasi. Masa respons atau ketersediaan awal sumber mungkin mendedahkan maklumat dalam sesetengah model ancaman. Panduan cap jari W3C menyenaraikan pemerhatian sumber dalam cache sebagai salah satu cara membuat inferens tentang konfigurasi pelayar atau pengguna.
Cache Storage dan service worker
API Cache Storage memberikan laman objek Cache yang dikawal secara jelas oleh skrip, sering digunakan untuk aplikasi web luar talian. Spesifikasi Service Workers menyatakan bahawa cache ini berasingan daripada cache HTTP pelayar, diasingkan mengikut origin dan dikemas kini atau dipadam oleh logik aplikasi, bukannya peraturan kesegaran HTTP biasa.
Perbezaan ini penting semasa menyahpepijat:
- pemadaman ‘imej dan fail dalam cache’ menyasarkan cache biasa pelayar;
- pemadaman data laman juga boleh membuang Cache Storage dan keadaan service worker; dan
- muat semula yang memintas cache HTTP mungkin masih membiarkan service worker aktif mengawal permintaan.
Nyatakan cache yang dimaksudkan sebelum memutuskan cara memeriksa atau mengosongkannya.
Pembahagian storan menambah satu lagi kunci
Dahulu, skop origin membolehkan pihak ketiga terbenam membaca storan yang sama apabila ia muncul dalam banyak laman peringkat teratas. Pelayar moden semakin menggunakan laman peringkat teratas atau konteks berkaitan sebagai sebahagian daripada kunci storan.
Chrome mendokumenkan bahawa pembahagian storannya menghalang bingkai example.com dalam a.com daripada berkongsi Local Storage, IndexedDB, Cache Storage, service worker dan mekanisme komunikasi tertentu secara automatik dengan bingkai yang sama dalam b.com. Menurut Chrome, ciri ini didayakan untuk semua pengguna sejak Chrome 115, dengan perubahan kemudian bagi beberapa API tambahan.
Pembahagian menerangkan hasil yang mungkin mengejutkan: origin terbenam yang sama boleh melihat storan berbeza bergantung pada laman yang mengelilinginya. Ini tidak bermaksud semua storan di mana-mana menggunakan satu model dua kunci sejagat. Versi pelayar, konteks peringkat teratas dan terbenam, pemberian akses storan, dasar perusahaan, sambungan dan peraturan khusus API boleh mengubah hasil.
Uji konteks yang tepat dan jangan membuat kesimpulan berdasarkan nama domain sahaja.
Cap jari pelayar: isyarat diperhatikan, bukan sebuah folder
W3C mentakrifkan pengecaman cap jari pelayar sebagai keupayaan mengenal pasti atau mengenal pasti semula pengguna, ejen pengguna atau peranti melalui tetapan konfigurasi atau ciri lain yang dapat diperhatikan. Panduan 2025 membezakan beberapa bentuk:
- Pengecaman pasif menggunakan maklumat yang sudah kelihatan dalam permintaan atau rangkaian, seperti pengepala permintaan dan alamat IP.
- Pengecaman aktif menjalankan kod untuk memerhatikan ciri seperti saiz tetingkap, fon, peranti tersambung, prestasi, penderia atau pemaparan grafik.
- Korelasi peristiwa sementara menghubungkan konteks melalui perubahan peranti atau persekitaran yang berlaku hampir serentak.
- Teknik menyerupai kuki menyimpan dan mengambil keadaan melalui mekanisme yang mungkin kekal lebih lama daripada kuki biasa atau menciptanya semula.
Cap jari jarang merupakan satu nilai kekal yang disimpan oleh pelayar. Pemerhati memilih isyarat, menggabungkannya dan menentukan kekuatan padanannya dengan lawatan terdahulu. Hasil boleh berubah apabila pelayar dikemas kini, tetingkap berubah, fon ditambah, peranti disambungkan atau laluan rangkaian bertukar. Ia juga boleh kekal serupa selepas kuki dipadam kerana banyak isyarat asas tidak berubah.
Cap jari bukan bukti identiti
Satu set isyarat mungkin dikongsi ramai orang atau berubah bagi orang yang sama. Laman juga boleh menggabungkan cap jari dengan log masuk, sejarah akaun pada pelayan, reputasi rangkaian atau pengecam tersimpan. Pengecaman selepas pemadaman data tidak membuktikan bahawa cap jari sahaja menjadi puncanya.
Atas sebab sama, mengubah satu tetapan yang kelihatan tidak menjamin identiti baharu. Konfigurasi yang konsisten dan lazim mungkin mengurangkan sesetengah keunikan, manakala banyak perubahan luar biasa yang dibuat secara berasingan boleh menghasilkan gabungan lebih jarang. Isyarat ini tidak boleh menyokong jaminan tidak kelihatan atau penerimaan oleh pihak ketiga.
Perubahan sebenar daripada tindakan pemadaman biasa
| Tindakan | Kesan berkemungkinan | Perkara penting yang masih tinggal |
|---|---|---|
| Padam kuki sesuatu laman | Membuang keadaan kuki sepadan dalam pelayar dan sering melog keluar profil itu | Data akaun pada pelayan, peranti lain dan stor bukan kuki mungkin kekal |
| Padam kuki dan data laman lain | Boleh membuang kuki, Web Storage, IndexedDB, service worker dan keadaan laman berkaitan, bergantung pada antara muka serta skop pelayar | Pengurus kata laluan, muat turun, data akaun dan isyarat peranti yang diperhatikan adalah berasingan |
| Padam imej dan fail dalam cache | Membuang kandungan respons cache biasa | Kuki, storan setempat dan Cache Storage mungkin perlu dipilih secara berasingan |
| Kosongkan sejarah | Membuang URL lawatan dan cadangan berkaitan dalam skop dipilih | Fail muat turun dan rekod yang disimpan laman kekal |
| Buang profil pelayar | Membuang penanda halaman, sejarah, kata laluan dan tetapan setempat profil daripada peranti | Data akaun disegerakkan, fail muat turun atau eksport, sandaran dan data pelayan mungkin kekal |
| Mulakan profil baharu | Bermula dengan himpunan keadaan profil berbeza | Peranti, sistem pengendalian, binaan pelayar dan rangkaian masih boleh kelihatan berkaitan |
Panduan data penyemakan imbas Chrome sendiri menganggap sejarah, kuki dan data laman lain, imej dan fail cache, sejarah muat turun, autoisi, tetapan laman serta data aplikasi dihoskan sebagai kategori berbeza. Ia juga menjelaskan bahawa pemadaman sejarah muat turun tidak membuang fail yang dimuat turun daripada komputer, dan pemadaman data ketika log masuk boleh menjejaskan Akaun Google serta peranti lain yang disegerakkan.
Kesan tepat bergantung pada julat masa, profil, keadaan akaun, versi pelayar dan dasar perusahaan yang dipilih. Semak teks pengesahan sebelum memadam data yang mungkin sukar dipulihkan.
Kesan profil pelayar berasingan pada setiap mekanisme
Profil kekal yang diasingkan dengan betul sepatutnya mempunyai stor kuki, kawasan storan web, pangkalan data laman, Cache Storage, pemilikan cache HTTP, sejarah, kebenaran laman dan keadaan sambungan sendiri. Ini menghalang profil B daripada mewarisi sesi tersimpan profil A begitu sahaja.
Beberapa isyarat boleh kekal sama:
- enjin dan versi pelayar;
- sistem pengendalian dan perkakasan;
- fon sistem terpasang serta ciri paparan;
- bahasa, zon waktu atau tetapan kebolehcapaian yang diwarisi daripada hos;
- alamat IP dan laluan rangkaian apabila tiada laluan berasingan ditetapkan; dan
- tingkah laku pengendali atau log masuk yang menghubungkan aktiviti pada lapisan aplikasi.
Profil berlainan juga boleh mendedahkan isyarat berbeza melalui sambungan, kebenaran, saiz tetingkap, tetapan bahasa atau laluan proksi. Kesan keseluruhan bergantung pada pelaksanaan dan konteks. Nilai pengasingan profil sebagai pengasingan keadaan, bukan jaminan cap jari.
Kenal pasti simptom sebelum mengosongkan semuanya
‘Saya telah dilog keluar’
Periksa kuki dahulu. Kuki sesi mungkin telah luput, dipadam, ditolak oleh dasar pelayar atau dibatalkan oleh pelayan. Storan setempat boleh menyokong antara muka, tetapi biasanya bukan kuki yang dihantar secara automatik untuk mengesahkan permintaan HTTP.
‘Laman terlupa draf atau data luar talian saya’
Periksa storan setempat, IndexedDB, Cache Storage dan keadaan service worker. Sahkan origin serta sama ada halaman berada di peringkat teratas atau terbenam dalam laman lain, kerana pembahagian boleh mengubah storan yang tersedia.
‘Muat semula pertama perlahan’
Cache HTTP kosong atau lapuk mungkin menjadi faktor. Tingkah laku rangkaian, pelayan dan service worker boleh menghasilkan simptom sama, jadi rekodkan masa permintaan serta status cache sebelum membuat kesimpulan.
‘Laman masih mengenali persekitaran selepas saya memadam data’
Masih ada beberapa penjelasan: akaun kekal log masuk di tempat lain, pelayan menghubungkan lawatan melalui data akaun atau rangkaian, stor pelayar lain masih wujud atau ciri diperhatikan menghubungkan sesi. Anggap cap jari sebagai satu hipotesis, bukan jawapan automatik.
Pilih tindakan berdasarkan mekanisme
Gunakan mekanisme untuk menentukan penyelesaian:
- periksa atau padam kuki apabila persoalan melibatkan sesi pelayan;
- periksa stor laman mengikut origin apabila aplikasi web mengekalkan keadaan setempat;
- bezakan cache HTTP daripada Cache Storage ketika mendiagnosis kandungan lapuk atau luar talian;
- gunakan profil kekal berasingan apabila keadaan kerja tersimpan mesti bebas antara satu sama lain; dan
- fahami cap jari sebagai korelasi isyarat diperhatikan, dengan batas yang tidak hilang hanya kerana data dipadam atau satu tetapan diubah.
Model ini mengelakkan dua kesilapan mahal: memadam lebih banyak keadaan daripada yang perlu dan menganggap stor kuki kosong menghasilkan identiti peranti baharu.
Batasan
Tingkah laku storan web dan privasi berubah mengikut pelayar serta keluaran. Peraturan kuki pihak ketiga, pembahagian storan, pengeluaran data, penyegerakan, dasar perusahaan, sambungan dan mod pelayaran peribadi boleh mengubah tingkah laku yang diterangkan. Panduan ini menerangkan piawaian dan dokumentasi Chrome semasa pada tarikh rujukan diakses; ia tidak mewakili setiap pelaksanaan pelayar atau laman web.
Tentang panduan ini
- Bantuan AI
- Artikel ini diterjemahkan daripada sumber bahasa Inggeris dengan bantuan AI. Isoline bertanggungjawab atas kandungan yang diterbitkan. Semakan oleh penutur bahasa Melayu yang fasih belum direkodkan.
Sumber
Sumber menyokong topik yang disenaraikan di bawah. Tarikh akses menunjukkan bila bahan yang dipetik disemak.
- IETF RFC 6265: Mekanisme pengurusan keadaan HTTP Internet Engineering Task Force
- Meliputi
- Penyimpanan dan penghantaran kuki, makna atribut, batas keselamatan serta kuasa sesi yang disertakan secara automatik.
- Diakses
-
- Meliputi
- Tingkah laku localStorage dan sessionStorage mengikut origin, pengekalan data serta panduan privasi.
- Diakses
- IETF RFC 9111: Pengcachean HTTP Internet Engineering Task Force
- Meliputi
- Penyimpanan cache HTTP, kunci, kesegaran, pengesahan semula dan penggunaan semula respons.
- Diakses
- W3C Service Workers: Cache dan CacheStorage World Wide Web Consortium
- Meliputi
- Cache Storage yang terikat pada origin dan dikawal skrip, serta perbezaannya daripada cache HTTP pelayar.
- Diakses
- Chrome Privacy Sandbox: Pembahagian storan Google Privacy Sandbox
- Meliputi
- Pembahagian storan Chrome mengikut konteks peringkat teratas serta batas pelaksanaan dan API tertentu.
- Diakses
- Bantuan Google Chrome: Padam data penyemakan imbas dalam Chrome Google Chrome Help
- Meliputi
- Kategori pemadaman berasingan, kesan penyegerakan dan data yang kekal selepas sejarah dipadam.
- Diakses
- Chrome for Developers: API chrome.browsingData Chrome for Developers
- Meliputi
- Kawalan jenis data pelayar, termasuk Cache Storage, service worker dan kategori storan laman.
- Diakses
- Bantuan Google Chrome: Urus Chrome dengan berbilang profil Google Chrome Help
- Meliputi
- Pengasingan profil Chrome setempat serta kesan dan batas pemadaman profil.
- Diakses
- W3C: Mengurangkan pengecaman cap jari pelayar dalam spesifikasi web World Wide Web Consortium
- Meliputi
- Input cap jari pasif, aktif dan berasaskan keadaan tersimpan serta batas korelasinya.
- Diakses