Artikel ini adalah artikel cermin dari terjemahan mesin, silakan klik di sini untuk melompat ke artikel aslinya.

Melihat: 11711|Jawab: 0

[Situs Web O&M] Pengoptimalan Kinerja Situs Web: Penjelasan terperinci tentang pengaturan kontrol cache

[Salin tautan]
Diposting pada 07/09/2015 19.30.51 | | | |


Header HTTP Kedaluwarsa dan kontrol cache


1. Konsep

Cache-control digunakan untuk mengontrol caching HTTP (mungkin tidak diimplementasikan sebagian di HTTP/1.0, hanya Pragma: no-cache yang diimplementasikan)

Format dalam paket:

Cache-Control: cache-directive

cache-directive dapat berupa sebagai berikut:

Permintaan:
| "tanpa cache"
| "tanpa toko"
| "max-age" "=" delta-detik
| "max-basi" [ "=" delta-detik ]
| "min-segar" "=" delta-detik
| "tanpa transformasi"
| "hanya-jika-cache"
| "ekstensi cache"


Tanggapan:
| "publik"
| "private" [ "=" <"> field-name <"> ]
| "no-cache" [ "=" <"> field-name <"> ]
| "tanpa toko"
| "tanpa transformasi"
| "harus divalidasi ulang"
| "proksi-validasi ulang"
| "max-age" "=" delta-detik
| "s-maxage" "=" delta-detik
| "ekstensi cache"

Bagian dari deskripsi:
Dibagi menjadi dapat di-cache atau tidak
Publik menunjukkan bahwa respons dapat di-cache oleh area cache mana pun.
Pribadi menunjukkan bahwa semua atau sebagian pesan respons pengguna tunggal tidak dapat diproses oleh cache bersama. Ini memungkinkan server untuk menjelaskan hanya ketika pengguna
Pesan respons parsial, yang tidak valid untuk permintaan dari pengguna lain.
no-cache menunjukkan bahwa pesan permintaan atau respons tidak dapat di-cache (HTTP/1.0 diganti dengan no-cache Pragma)
Menurut apa yang bisa di-cache
No-store digunakan untuk mencegah informasi penting dipublikasikan secara tidak sengaja. Mengirim pesan permintaan akan membuat pesan permintaan dan respons tidak di-cache.
Batas waktu sesuai dengan cache
max-age menunjukkan bahwa klien dapat menerima respons dengan masa pakai tidak lebih dari waktu yang ditentukan (dalam detik).
min-fresh menunjukkan bahwa klien dapat menerima respons dengan waktu respons kurang dari waktu saat ini ditambah waktu yang ditentukan.
max-stale menunjukkan bahwa klien dapat menerima pesan respons di luar periode batas waktu. Jika Anda menentukan nilai untuk pesan max-stale, maka klien dapat
Terima pesan respons yang melebihi nilai periode lembur yang ditentukan.
Kedaluwarsa mewakili waktu keberadaan, memungkinkan klien untuk tidak memeriksa (mengajukan permintaan) sebelum waktu ini, yang setara dengan max-age
Efek. Tetapi jika mereka ada pada saat yang sama, mereka ditimpa oleh usia maksimum Cache-Control.
Format:
kedaluwarsa = "kedaluwarsa" ":" HTTP-date
Misalnya
Expires: Thu, 01 Dec 1994 16:00:00 GMT (必须是GMT格式)

2. Aplikasi
Atur kedaluwarsa dan kontrol cache melalui META melalui HTTP
<meta http-equiv="Cache-Control" content="max-age=7200" />
<meta http-equiv="Expires" content="Mon, 20 Jul 2009 23:00:00 GMT" />
Pengaturan di atas hanyalah contoh, dan Anda benar-benar dapat menggunakan salah satunya. Jika Anda menulisnya dengan cara ini, itu hanya berlaku untuk halaman web, bukan untuk gambar atau permintaan lain di halaman web, dan tidak akan melakukan cache apa pun.
Dengan cara ini, klien akan memiliki lebih banyak permintaan, dan meskipun itu hanya sesuatu yang memeriksa status Modifikasi terakhir, jumlah permintaan pasti akan memengaruhi kecepatan penjelajahan.
Jika Anda ingin menambahkan cache ke file, Anda dapat menggunakan modul mod_expire Apache, yang ditulis sebagai
<IfModule mod_expires.c>
kedaluwarsaaktif aktif
KedaluwarsaDefault "akses plus 1 hari"
</IfModule>
Saya ingat bahwa ExpiresActive diatur ke Aktif, saya tidak mengaturnya pada awalnya, dan sepertinya tidak peduli seberapa YSlow, saya tidak dapat menemukan mekanisme caching. Jika Anda menambahkannya seperti ini, itu akan default ke semuanya.
Jika Anda ingin menargetkan masing-masing jenis MIME, Anda dapat:
KedaluwarsaByType gambar/gif "akses ditambah 5 jam 3 menit"
Lihat Modul Apache mod_expires
Selain itu, saat Anda mengklik Refresh di browser, permintaan yang dikirim oleh klien semuanya max-age=0, yang menunjukkan bahwa permintaan divalidasi dan dikirim ke server
Jika Anda meminta untuk memeriksa cache dan kemudian memperbarui cache, Anda umumnya akan mendapatkan 304 Tidak Dimodifikasi, yang berarti tidak ada perubahan.






Mantan:Temukan pekerjaan paruh waktu dan dapatkan uang tambahan Rekrut pekerja paruh waktu dengan perlakuan yang sangat baik, penyelesaian tunai, lebih dari 300 per hari
Depan:Seperti kueri fuzzy di Linq ke sql
Sanggahan:
Semua perangkat lunak, materi pemrograman, atau artikel yang diterbitkan oleh Code Farmer Network hanya untuk tujuan pembelajaran dan penelitian; Konten di atas tidak boleh digunakan untuk tujuan komersial atau ilegal, jika tidak, pengguna akan menanggung semua konsekuensi. Informasi di situs ini berasal dari Internet, dan sengketa hak cipta tidak ada hubungannya dengan situs ini. Anda harus sepenuhnya menghapus konten di atas dari komputer Anda dalam waktu 24 jam setelah pengunduhan. Jika Anda menyukai program ini, harap dukung perangkat lunak asli, pembelian pendaftaran, dan dapatkan layanan asli yang lebih baik. Jika ada pelanggaran, silakan hubungi kami melalui email.

Mail To:help@itsvse.com