Informasi header protokol HTML HTTP mengontrol informasi cache halaman di beberapa tempat, termasuk sisi browser, sisi server cache menengah (seperti cumi -cumi, dll.), Dan sisi server web. Artikel ini membahas situasi cache halaman HTML dengan informasi kontrol cache dalam informasi header (halaman HTML yang dihasilkan oleh JSP/Servlets juga merupakan halaman HTML) di server cache menengah.
Kata kunci header tentang cache dalam protokol HTTP termasuk cache-control (http1.1), pragma (http1.0), modifikasi terakhir, kedaluwarsa, dll.
Di HTTP 1.0, cache halaman dikendalikan melalui pragma , dan Anda dapat mengatur: pragma atau tanpa cache. Ada banyak artikel di internet yang menjelaskan cara mencegah browser atau server cache menengah dari halaman cache. Nilai biasanya diatur ke No-Cache, tetapi nilai ini tidak begitu aman. Biasanya, kedaluwarsa diatur ke 0 untuk mencapai tujuan. Namun, jika kita sengaja membutuhkan browser atau server cache untuk menangani halaman kita, nilai ini harus diatur ke pragma.
Dalam HTTP 1.1, cache-control diaktifkan untuk mengontrol cache halaman. Berikut adalah beberapa parameter yang umum digunakan:
• Tidak ada cache, baik browser maupun server cache tidak boleh menangani informasi halaman;
• publik, baik browser dan server cache dapat menemui informasi halaman;
• Tidak ada toko, permintaan maupun informasi respons tidak boleh disimpan dalam sistem disk pihak lain;
• Must-revalidasi, untuk setiap permintaan dari klien, server proxy harus ingin server memverifikasi bahwa cache sudah ketinggalan zaman;
Modifikasi terakhir hanya waktu generasi terakhir halaman, format GMT;
Kedaluwarsa nilai batas yang kedaluwarsa, format GMT, berarti bahwa browser atau server cache harus mendapatkan informasi halaman baru dari server nyata setelah titik waktu ini;
Dua nilai di atas diatur ke format GMT tipe karakter dalam JSP, dan tidak dapat berlaku, sehingga tipe panjang diatur agar berlaku;
Berikut adalah contoh tes:
Paket com.servlet; impor java.io.ioException; impor java.io.printwriter; impor javax.servlet.servletException; import javax.servlet.httpservlet; impor javax.servlet.http.httpservlet; kelas servleta memperluas httpservlet {@Overridepublic void service (permintaan httpservletrequest, httpservletResponse response) melempar servletException, ioException {response.setContentTye ("Text/html"); // Halaman server tidak ada di CACHACHED ("TEXT/HTML"); batas waktu detik. // Jika Anda memasukkan kembali halaman dalam hitungan detik, Anda tidak akan memasukkan java.util.date date servlet = java.util.date () baru; response.setDateheader ("Modifikasi Terakhir", Date.GetTime ()); // Modifikasi Terakhir: Waktu generasi terakhir dari respons halaman. // kedaluwarsa: respons batas kedaluwarsa.setHeader ("cache-control", "public"); // Cache-Control mengontrol apakah halaman tersebut di-cache, publik: baik browser dan server cache dapat menangani informasi halaman; response.setheader ("pragma", "pragma"); // Pragma: Setel apakah halaman itu di -cache. Jika pragma, itu akan di -cache. Jika tidak ada cache, itu tidak akan di-cache.//B browser atau server cache tidak diizinkan untuk menyimpan informasi halaman saat ini. /*Response.setHeader ("Pragma", "No-Cache"); response.setDateheader ("kedaluwarsa",); response.addheader ("cache-control", "no-cache"); // Baik browser maupun server cache harus menangani respons informasi halaman. response.addheader ("cache-control", "harus-revalidasi");*//// untuk setiap permintaan dari klien, server proxy harus ingin server memverifikasi bahwa cache sudah ketinggalan zaman; System.out.println ("Entered Servlet"); response.getWriter (). tulis ("Selamat datang di beranda saya");}} Jika Anda perlu mengatur cache pada halaman HTML, tambahkan pernyataan berikut ke tag <head>:
<meta http-equiv = "pragma" konten = "no-cache"> <meta http-equiv = "cache-control" content = "no-cache"> <meta http-equiv = "kedaluwarsa" konten = "">
Lampiran: Peran meta dalam halaman HTML
Meta digunakan untuk mensimulasikan header respons dari protokol HTTP dalam dokumen HTML. Tag meta digunakan dalam halaman web <head> dan </head>. Tag meta banyak kegunaan. Ada dua properti meta: name dan http-equiv. Atribut nama terutama digunakan untuk menjelaskan halaman web, sesuai dengan konten (konten halaman web), sehingga robot mesin pencari dapat mencari dan mengklasifikasikan (saat ini, hampir semua mesin pencari menggunakan robot online untuk secara otomatis mencari nilai meta untuk mengklasifikasikan halaman web). Yang paling penting dari ini adalah deskripsi (deskripsi situs pada mesin pencari) dan kata kunci (kata kunci yang dikategorikan), sehingga Anda harus menambahkan nilai meta ke setiap halaman. Yang paling umum digunakan adalah sebagai berikut:
Atribut Nama
1. <Meta name = "generator" contact = ""> digunakan untuk mengilustrasikan alat generasi (seperti Microsoft Frontpage 4.0), dll.;
2. <meta name = "kata kunci" contact = ""> Jelaskan kata kunci halaman web Anda ke mesin pencari;
3. <meta name = "description" contact = ""> Tell Engine Pencari Konten Utama Situs Anda;
4. <Meta name = "penulis" contact = "name your"> Tell ENGINE Pencarian Penulis produksi situs Anda;
5. <meta name = "robot" contact = "all | none | index | noindex | ikuti | nofollow">
Atribut dijelaskan sebagai berikut:
Setel ke All: File akan diambil dan tautan pada halaman dapat ditanyakan;
Diatur ke tidak ada: file tidak akan diambil, dan tautan pada halaman tidak dapat ditanya;
Tetapkan sebagai indeks: file akan diambil;
Setel untuk mengikuti: tautan pada halaman dapat ditanya;
Setel ke NoIndex: File tidak akan diambil, tetapi tautan pada halaman dapat ditanya;
Diatur ke Nofollow: File tidak akan diambil, dan tautan pada halaman dapat ditanya.
Atribut HTTP-EQUIV
1. <Meta http-equiv = "tipe konten" contact = "text/html"; charset = gb_2312-80 "> dan <meta http-equiv =" konten-bahasa "kontak =" zh-cn "> digunakan untuk menjelaskan teks dan bahasa yang digunakan dalam produksi beranda;
Sebagai contoh, bahasa Inggris adalah set karakter ISO-8859-1, dan ada juga BIG5, UTF-8, Shift-jis, EUC, KOI8-2 dan set karakter lainnya;
2. <Meta http-equiv = "Refresh" contact = "n; url = http: // yourlink"> mengubah halaman web ke halaman dalam waktu yang ditentukan n;
3. <meta http-equiv = "kedaluwarsa" contact = "mon, 12 Mei 2001 00:20:00 GMT"> dapat digunakan untuk mengatur waktu kedaluwarsa halaman web. Setelah kedaluwarsa, itu harus dipanggil di server lagi. Perlu dicatat bahwa format waktu GMT harus digunakan;
4. <Meta http-equiv = "pragma" contact = "no-cache"> digunakan untuk mengatur browser untuk melarang konten halaman dari cache lokal, dan setelah halaman web dibiarkan, itu tidak dapat dipanggil keluar dari cache lagi;
5. <meta http-equiv = "set-cookie" contact = "mon, 12 Mei 2001 00:20:00 GMT"> Pengaturan cookie. Jika halaman web kedaluwarsa, cookie yang disimpan akan dihapus. Juga perlu menggunakan format waktu GMT;
6. <meta http-equiv = "pics-label" contact = ""> peringkat level halaman web, ada pengaturan konten dalam opsi internet IE, yang dapat mencegah menjelajah beberapa situs web terbatas, dan tingkat pembatasan situs web diatur melalui atribut meta;
7. <meta http-equiv = "windows-target" contact = "_ top"> Memaksa halaman ditampilkan sebagai halaman independen di jendela saat ini, yang dapat mencegah halaman web Anda dipanggil oleh orang lain sebagai halaman bingkai;
8. <meta http-equiv = "halaman-enter" contact = "ungkap (durasi = 10, transpsi = 50)"> dan <meta http-equiv = "halaman-exit" contact = "ungkap (durasi = 20, transpsi = 6)"> Tetapkan efek khusus saat memikat dan meninggalkan halaman. Fungsi ini adalah "Transisi Halaman Format/Web" di FrontPage, tetapi halaman yang ditambahkan tidak bisa menjadi halaman bingkai.
Di atas adalah pengetahuan yang relevan tentang pengaturan cache dan non-cache dari halaman dan peran meta di halaman HTML yang diperkenalkan oleh editor kepada Anda. Saya harap ini akan membantu Anda. Jika Anda memiliki pertanyaan, silakan tinggalkan saya pesan dan editor akan membalas Anda tepat waktu. Terima kasih banyak atas dukungan Anda ke situs web Wulin.com!