Heim Web-Frontend HTML-Tutorial So verwenden Sie den Front-End-Browser-Cache

So verwenden Sie den Front-End-Browser-Cache

Nov 27, 2017 am 10:05 AM
firefox webkit 浏览器

Ich habe Ihnen das Browser-Caching bereits vorgestellt und auch das HTML-Offline-Caching. Wenn ich zu viel darüber rede, kann man leicht verwirrt werden. Heute werde ich Ihnen den Unterschied zwischen diesen Caches und der Verwendung des Caches erklären.

200 aus dem Speichercache Lesen Sie den Cache direkt aus, ohne auf den Server zuzugreifen, und lesen Sie den Cache aus dem Speicher. Die Daten werden zu diesem Zeitpunkt im Speicher zwischengespeichert. Nachdem der Prozess beendet wurde, dh nachdem der Browser geschlossen wurde, sind die Daten nicht mehr vorhanden. Diese Methode kann jedoch nur abgeleitete Ressourcen

200 aus dem Festplatten-Cache zwischenspeichern, ohne auf den Server zuzugreifen, den Cache direkt zu lesen und den Cache von der Festplatte zu lesen. Wenn der Prozess abgebrochen wird, sind die Daten noch vorhanden. Diese Methode kann nur abgeleitete Ressourcen zwischenspeichern

304 Nicht geändert. Beim Zugriff auf den Server wird festgestellt, dass die Daten nicht aktualisiert wurden, und der Server gibt diesen Statuscode zurück. Lesen Sie dann die Daten aus dem Cache.

Prinzip des Caches der dritten Ebene

Gehen Sie zuerst zum Speicher. Wenn vorhanden, laden Sie ihn direkt.

Wenn kein Speicher vorhanden ist, wählen Sie die Festplatte aus, die Sie abrufen möchten Wenn es vorhanden ist, laden Sie es direkt

Wenn keine Festplatte vorhanden ist, stellen Sie eine Netzwerkanfrage

Zwischenspeichern Sie die geladenen Ressourcen auf der Festplatte und im Speicher

Durchsuchen Sie im Allgemeinen Bilder wie folgt:

Zugriff-> ; Refresh-> 200(aus dem Speichercache)

Anwendungscache Es ist ein Offline-Cache, was bedeutet, dass Ressourcen von der Festplatte gelesen werden können, ohne mit dem verbunden zu sein Internet: Auch wenn die Internetverbindung unterbrochen ist, können Benutzer surfen.

Browser-Cache festlegen

304 Ist es notwendig, den Cache auszuhandeln oder einmal mit dem Server zu kommunizieren? Wenn Sie die Serverkommunikation unterbrechen möchten, müssen Sie den Browser zwingen, den lokalen Cache (Cache) zu verwenden -control/expires),

Im Allgemeinen gibt es mehrere Möglichkeiten, den Browser-Cache festzulegen.

1. Ablauf und Cache-Kontrolle über HTTP META festlegen

So geschrieben gilt es nur für die Webseite und ist für Bilder oder andere Anfragen im Web ungültig Seite.
<meta http-equiv="Cache-Control" content="max-age=7200" />
 <meta http-equiv="Expires" content="Sun Oct 15 2017 20:39:53 GMT+0800 (CST)" />
Nach dem Login kopieren

2. Apache-Serverkonfigurationsbilder, CSS, JS, Flash-Cache

Diese Technologie wird hauptsächlich durch die Serverkonfiguration implementiert, Sie können das Modul mod_expires verwenden, um Folgendes zu implementieren:

Kompilieren Sie das Modul „mod_expires“:

Öffnen Sie zuerst die Datei httpd.conf und suchen Sie dann nach dem Modul „expires“. Nachdem Sie es gefunden haben, löschen Sie das #-Zeichen auf der linken Seite, um dies anzuzeigen Dieses Modul wird aktiviert und der Apache-Server wird neu gestartet.
Cd  /root/httpd-2.2.3/modules/metadata/usr/local/apache/bin/apxs -i -a -c mod_expires.c //编译
Nach dem Login kopieren

Bearbeiten Sie die httpd.conf-Konfiguration: Fügen Sie den folgenden Inhalt hinzu

3, PHP und andere Einstellungen
<IfModule mod_expires.c>ExpiresActive on
ExpiresDefault "access plus 1 month"
ExpiresByType text/html "access plus 1 months"
ExpiresByType text/css "access plus 1 months"
ExpiresByType image/gif "access plus 1 months"
ExpiresByType image/jpeg "access plus 1 months"
ExpiresByType image/jpg "access plus 1 months"
ExpiresByType image/png "access plus 1 months"
EXpiresByType application/x-shockwave-flash "access plus 1 months"
EXpiresByType application/x-javascript      "access plus 1 months"
#ExpiresByType video/x-flv "access plus 1 months"</IfModule>
Nach dem Login kopieren

oder
<?php
  header("Cache-Control: public");
  header("Pragma: cache");
  $offset = 30*60*60*24; // cache 1 month
  $ExpStr = "Expires: ".gmdate("D, d M Y H:i:s", time() + $offset)." GMT";
  header($ExpStr);?>
Nach dem Login kopieren

Cache-Status Front-End-Code-Bereitstellung
$seconds_to_cache = 3600;$ts = gmdate("D, d M Y H:i:s", time() + $seconds_to_cache) . " GMT";header("Expires: $ts"); header("Pragma: cache");header("Cache-Control: max-age=$seconds_to_cache");
Nach dem Login kopieren

Frage 1: Wie aktualisiere ich den Front-End-Code mit Cache?

Wir können die Versionsnummer nach der Ressourcendatei oder dem Bild hinzufügen, wie unten gezeigt.

Frage 2: Aber nachdem wir allen Dateien Versionsnummern hinzugefügt haben, haben wir nur eine Datei geändert. Ist der Cache anderer Dateien nicht verschwendet?

Um dieses Problem zu lösen, können wir den Datenalgorithmus

Zusammenfassung

verwenden, um zusammenfassende Informationen für die Datei zu finden, und die zusammenfassenden Informationen entsprechen eins zu eins dem Dateiinhalt. Wie unten gezeigt: Dies löst das Problem.

Frage 3: Es ist wieder ein neues Problem aufgetreten. Was soll ich beim Veröffentlichen von Dateien tun?

1. Stellen Sie zuerst die Seite und dann die Ressourcen bereit: Wenn ein Benutzer in der Zeitspanne zwischen den beiden Bereitstellungen auf die Seite zugreift, werden die alten Ressourcen in der neuen Seitenstruktur und in der alten Version geladen Die Ressource wird als neue Version zwischengespeichert. Das Ergebnis ist, dass der Benutzer auf eine Seite mit einem ungeordneten Stil zugreift. Sofern die Seite nicht manuell aktualisiert wird, werden weiterhin Fehler ausgeführt, bis der Ressourcencache abläuft.

2. Stellen Sie zuerst Ressourcen bereit, dann stellen Sie Seiten bereit: Innerhalb des Bereitstellungszeitintervalls besuchen Benutzer mit lokalem Cache alter Versionsressourcen die Website, da es sich bei der angeforderten Seite um eine alte Version handelt, auf die die Ressource

verweist 🎜 >Keine Änderung, der Browser verwendet direkt den lokalen Cache. In diesem Fall wird die Seite normal angezeigt, aber wenn Benutzer ohne lokalen Cache oder abgelaufenem Cache die Website besuchen, wird die alte Versionsseite die neue Versionsressource laden Wenn die Seite jedoch bereitgestellt wird, kehren diese Benutzer zum Normalzustand zurück, wenn sie die Seite erneut besuchen.

Okay, was ich aus der obigen Analyse sagen möchte, ist: Niemand kann zuerst bereitstellen! Dies führt während des Bereitstellungsprozesses zu Seitenverwirrung. Daher können F&E-Studenten bei Projekten mit geringem Datenverkehr hart arbeiten und mitten in der Nacht heimlich online gehen. Laden Sie zuerst statische

Ressourcen hoch und stellen Sie dann die Seite bereit. Es scheint, als gäbe es weniger Probleme.

Wie kann man diese Probleme lösen?

Dieses Problem entsteht durch die Overlay-Freigabe von Ressourcen. Dieses Problem tritt auf, wenn freigegebene Ressourcen zur Abdeckung veröffentlichter Ressourcen verwendet werden. Es ist einfach, das Problem zu lösen, d. h. die Veröffentlichung ohne Abdeckung zu implementieren

Es gibt so viele Aspekte zum Caching. Weitere spannende Informationen finden Sie in anderen verwandten Artikeln auf der chinesischen PHP-Website!

Verwandte Lektüre:

So implementieren Sie Karussellcode für digitale Fokusdiagramme in HTML

In HTML Wie man mit der unvollständigen Anzeige der letzten Textzeile umgeht

So verwenden Sie die Leinwand, um einen Partikelfontänen-Animationseffekt zu erstellen

Das obige ist der detaillierte Inhalt vonSo verwenden Sie den Front-End-Browser-Cache. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Warum können benutzerdefinierte Stilblätter auf lokalen Webseiten in Safari, nicht jedoch auf Baidu -Seiten wirksam? Warum können benutzerdefinierte Stilblätter auf lokalen Webseiten in Safari, nicht jedoch auf Baidu -Seiten wirksam? Apr 05, 2025 pm 05:15 PM

Diskussion über die Verwendung benutzerdefinierter Stylesheets in Safari heute Wir werden eine Frage zur Anwendung von benutzerdefinierten Stylesheets für Safari Browser diskutieren. Front-End-Anfänger ...

Wie kann man das Größensymbol durch CSS anpassen und es mit der Hintergrundfarbe einheitlich machen? Wie kann man das Größensymbol durch CSS anpassen und es mit der Hintergrundfarbe einheitlich machen? Apr 05, 2025 pm 02:30 PM

Die Methode zur Anpassung der Größe der Größe der Größe der Größe in CSS ist mit Hintergrundfarben einheitlich. In der täglichen Entwicklung begegnen wir häufig Situationen, in denen wir die Details der Benutzeroberfläche wie Anpassung anpassen müssen ...

Wie zeige ich die lokal installierte 'Jingnan Mai Round Body' auf der Webseite richtig? Wie zeige ich die lokal installierte 'Jingnan Mai Round Body' auf der Webseite richtig? Apr 05, 2025 pm 10:33 PM

Mit lokal installierten Schriftdateien auf Webseiten kürzlich habe ich eine kostenlose Schriftart aus dem Internet heruntergeladen und sie erfolgreich in mein System installiert. Jetzt...

Wie steuern Sie die obere und das Ende der Seiten in den Browser -Druckeinstellungen über JavaScript oder CSS? Wie steuern Sie die obere und das Ende der Seiten in den Browser -Druckeinstellungen über JavaScript oder CSS? Apr 05, 2025 pm 10:39 PM

So verwenden Sie JavaScript oder CSS, um die obere und das Ende der Seite in den Druckeinstellungen des Browsers zu steuern. In den Druckeinstellungen des Browsers gibt es eine Option, um zu steuern, ob das Display ist ...

Wie verwende ich lokal installierte Schriftdateien auf Webseiten? Wie verwende ich lokal installierte Schriftdateien auf Webseiten? Apr 05, 2025 pm 10:57 PM

So verwenden Sie lokal installierte Schriftartdateien auf Webseiten. Wenn Sie diese Situation in der Webseitenentwicklung gestoßen haben: Sie haben eine Schriftart auf Ihrem Computer installiert ...

Warum wirkt sich negative Margen in einigen Fällen nicht wirksam? Wie löst ich dieses Problem? Warum wirkt sich negative Margen in einigen Fällen nicht wirksam? Wie löst ich dieses Problem? Apr 05, 2025 pm 10:18 PM

Warum werden negative Margen in einigen Fällen nicht wirksam? Während der Programmierung negative Margen in CSS (negativ ...

Wie verwendet ich CSS und Flexbox, um das reaktionsschnelle Layout von Bildern und Text in verschiedenen Bildschirmgrößen zu implementieren? Wie verwendet ich CSS und Flexbox, um das reaktionsschnelle Layout von Bildern und Text in verschiedenen Bildschirmgrößen zu implementieren? Apr 05, 2025 pm 06:06 PM

Implementieren von Responsive Layouts mit CSS, wenn wir Layoutänderungen unter verschiedenen Bildschirmgrößen im Webdesign, CSS ...

Der Text unter Flex -Layout wird weggelassen, aber der Behälter wird geöffnet? Wie löst ich es? Der Text unter Flex -Layout wird weggelassen, aber der Behälter wird geöffnet? Wie löst ich es? Apr 05, 2025 pm 11:00 PM

Das Problem der Containeröffnung aufgrund einer übermäßigen Auslassung von Text unter Flex -Layout und Lösungen werden verwendet ...

See all articles