Les informations d'en-tête du protocole HTML HTTP contrôlent les informations de cache de la page à plusieurs endroits, y compris le côté du navigateur, le côté serveur de cache intermédiaire (tel que Squid, etc.) et le côté serveur Web. Cet article traite de la situation de cache des pages HTML avec des informations de contrôle du cache dans les informations d'en-tête (les pages HTML générées par JSP / Servlets sont également des pages HTML) dans le serveur de cache intermédiaire.
Les mots clés d'en-tête sur le cache dans le protocole HTTP incluent le contrôle du cache (HTTP1.1), Pragma (HTTP1.0), dernier modifié, expire, etc.
Dans HTTP 1.0, le cache de page est contrôlé via Pragma , et vous pouvez définir: pragma ou sans cache. Il existe de nombreux articles sur Internet expliquant comment empêcher le navigateur ou le serveur de cache intermédiaire des pages de cache. La valeur est généralement définie sur sans cache, mais cette valeur n'est pas si sûre. Habituellement, Expire est fixé à 0 pour atteindre l'objectif. Cependant, si nous avons délibérément besoin du navigateur ou du serveur de cache pour mettre notre page, cette valeur doit être définie sur Pragma.
Dans HTTP 1.1, le contrôle du cache est permis de contrôler le cache des pages. Voici quelques paramètres couramment utilisés:
• Aucun cache, ni le navigateur ni le serveur de cache ne doivent être le cache des informations de la page;
• public, le navigateur et le serveur de cache peuvent mettre en cache les informations de la page;
• Aucun magasin, ni les informations de demande ni de réponse ne doivent être stockées dans le système de disque de l'autre partie;
• doit-réalider, pour chaque demande du client, le serveur proxy doit vouloir que le serveur vérifie que le cache est obsolète;
Dernier mode uniquement le temps de dernière génération de la page, format GMT;
Expire la valeur limite expirée, le format GMT, signifie que le navigateur ou le serveur de cache doit obtenir de nouvelles informations de page à partir du serveur réel après ce point de temps;
Les deux valeurs ci-dessus sont définies sur le format GMT de type caractéristique dans JSP et ne peuvent pas prendre effet, donc le type long est défini pour prendre effet;
Voici un exemple de test:
Package com.servlet; Importer java.io.ioException; import java.io.printwriter; import javax.servlet.servletException; import javax.servlet.http.httpservlet; import javax.servlet.http.httpservletrequest; importation javax.servlet.http. Servleta étend HttpServlet {@OverRidePublic Void Service (HttpServLetRequest Request, HttpservletSponse Response) lance ServletException, ioException {Response.SetContentType ("text / html"); // La page de servlet n'est pas en cache par défaut // cette page permet de cache sur le côté naval secondes. // Si vous réintéressez la page en quelques secondes, vous n'entrez pas le servlet java.util.date date = new java.util.date (); Response.SetDateHeader ("Last-Modified", date.getTime ()); // dernier modifié: la dernière génération de la page Response.SetDateHeader ("Expires", date.getTime () +); // expire: la limite d'expiration Response.sethEader ("Cache-Control", "public"); // Cache-Control contrôle si la page est mise en cache, public: le navigateur et le serveur de cache peuvent mettre en cache les informations de la page; Response.Setheader ("Pragma", "Pragma"); // Pragma: Définissez si la page est mise en cache. S'il s'agit de pragma, il sera mis en cache. S'il n'est pas de cache, il ne sera pas mis en cache.// le navigateur ou le serveur de cache n'est pas autorisé à mettre en cache les informations actuelles de la page. /*Response.sethEader ("pragma", "non-cache"); réponse.setDateHeader ("expire",); Response.AddHeader ("Cache-Control", "No-cache"); // Ni le navigateur ni le serveur de cache ne doivent être le cache de l'information Response.Addheader ("Cache-Control", "Non-Store"); // Non des informations de demande et de réponse ne doivent être stockées dans le système de disque de l'autre partie; Response.Addheader ("Cache-Control", "Must-Revalidate"); * //// pour chaque demande du client, le serveur proxy doit vouloir que le serveur vérifie que le cache est obsolète; System.out.println ("Entré Servlet"); réponse.getWriter (). Écrire ("Bienvenue sur ma page d'accueil");}} Si vous avez besoin de définir le cache sur la page HTML, ajoutez l'instruction suivante à la balise <A-Head>:
<meta http-equiv = "pragma" contenu = "no-cache"> <meta http-equiv = "cache-control" contenu = "non-cache"> <meta http-equiv = "expires" contenu = "">
Attachement: le rôle de la méta dans la page HTML
Meta est utilisée pour simuler l'en-tête de réponse du protocole HTTP dans les documents HTML. La balise META est utilisée dans les pages Web <A-Head> et </A-Head>. La balise Meta est de nombreuses utilisations. Il existe deux propriétés de Meta: Name et Http-Equiv. L'attribut de nom est principalement utilisé pour décrire les pages Web, correspondant au contenu (contenu de la page Web), afin que les robots de moteur de recherche puissent rechercher et classer (actuellement, presque tous les moteurs de recherche utilisent des robots en ligne pour rechercher automatiquement les méta-valeurs pour classer les pages Web). Les plus importants d'entre eux sont la description (la description du site sur les moteurs de recherche) et les mots clés (mots clés catégorisés), vous devez donc ajouter une valeur méta-valeur à chaque page. Les plus couramment utilisés sont les suivants:
attribut de nom
1. <Meta name = "Generator" Contact = ""> est utilisé pour illustrer l'outil de génération (tel que Microsoft FrontPage 4.0), etc.;
2. <Meta Name = "Keywords" Contact = ""> Expliquez les mots clés de votre page Web aux moteurs de recherche;
3. <Meta name = "Description" Contact = ""> Dites les moteurs de recherche le contenu principal de votre site;
4. <méta name = "auteur" Contact = "Votre nom"> Dites les moteurs de recherche l'auteur de la production de votre site;
5. <Méta name = "robots" contact = "all | Aucun | index | noindex | suivez | nofollow">
Les attributs sont décrits comme suit:
Défini sur tous: le fichier sera récupéré et les liens sur la page peuvent être interrogés;
Défini sur None: le fichier ne sera pas récupéré et les liens sur la page ne peuvent pas être interrogés;
Définir en tant qu'index: le fichier sera récupéré;
Défini pour suivre: les liens sur la page peuvent être interrogés;
Défini sur NoIndex: le fichier ne sera pas récupéré, mais les liens sur la page peuvent être interrogés;
Défini sur Nofollow: le fichier ne sera pas récupéré et les liens sur la page peuvent être interrogés.
Attribut HTTP-Equiv
1. <Meta http-equiv = "content-type" contact = "text / html"; charset = gb_2312-80 "> et <meta http-equiv =" content-liage "contact =" zh-cn "> sont utilisés pour expliquer le texte et le langage utilisés dans la production de page d'accueil;
Par exemple, l'anglais est le jeu de caractères ISO-8859-1, et il y a aussi Big5, UTF-8, Shift-Jis, EUC, KOI8-2 et d'autres jeux de caractères;
2. <Meta http-equiv = "refresh" contact = "n; url = http: // yourLink"> modifie la page Web en page dans le délai spécifié n;
3. <Meta http-equiv = "expires" contact = "lun, 12 mai 2001 00:20:00 gmt"> peut être utilisé pour définir le temps d'expiration de la page Web. Une fois qu'il expire, il doit à nouveau être appelé sur le serveur. Il convient de noter que le format de temps GMT doit être utilisé;
4. <Meta http-equiv = "pragma" contact = "no-cache"> est utilisé pour définir le navigateur pour interdire le contenu de la page du cache local, et une fois la page Web laissée, elle ne peut pas être appelée à nouveau du cache;
5. <Meta http-equiv = "set-cookie" contact = "lun, 12 mai 2001 00:20:00 GMT"> Réglage des cookies. Si la page Web expire, les cookies enregistrés seront supprimés. Il est également nécessaire d'utiliser le format de temps GMT;
6. <META HTTP-Equiv = "Pics-Label" Contact = ""> Niveau de page Web, il existe un paramètre de contenu dans les options Internet de IE, ce qui peut empêcher la navigation de certains sites Web restreints, et le niveau de restriction du site Web est fixé via l'attribut META;
7. <Méta http-equiv = "windows-target" contact = "_ top"> Forcer la page à afficher comme une page indépendante dans la fenêtre actuelle, qui peut empêcher que votre page Web soit appelée par d'autres comme page de trame;
8. <Meta http-equiv = "page-enter" contact = "RevealTrans (durée = 10, transtion = 50)"> et <meta http-equiv = "page-exit" contact = "Revealtrans (durée = 20, tranStion = 6)"> Définissez l'effet spécial lorsque vous entrez et en quittant la page. Cette fonction est la "transition format / page Web" dans FrontPage, mais la page ajoutée ne peut pas être une page de trame.
Ce qui précède est la connaissance pertinente sur le cache et les paramètres non cache de la page et le rôle de Meta dans la page HTML que l'éditeur vous a présenté. J'espère que cela vous sera utile. Si vous avez des questions, veuillez me laisser un message et l'éditeur vous répondra à temps. Merci beaucoup pour votre soutien au site Web Wulin.com!