2016-04-20 18 views
0

Ich bin ziemlich neu in Skripting und Programmierung. Ich habe jetzt Interesse an einer Beschleunigung meiner Website. Um dies zu tun, möchte ich beginnen, das Browser-Caching zu nutzen.Wie kann ich mit der Verwendung von Etag URL Fingerprinting für meine OpenCart-Website beginnen?

Ich habe ein paar Dinge gelesen, aber ich straukele jetzt, um die richtige Entscheidung zu treffen.

Soweit ich es verstehen gibt drei Optionen:

-expires -max Alter -Etag (während max Alter mit)

Die ersten beiden sind nicht geeignet für eine E-Commerce-Website (opencart btw) meiner Meinung nach. Aber sind viel einfacher zu implementieren als das Etag, wie ich es verstehe.

Ich habe so weit wie das Ablaufen und Max Alter in meinem Test eviroment zu bekommen, aber dann bekomme ich Probleme mit veralteten Client Seite Rendering meiner Webseite.

Also abschließend möchte ich für die Etag gehen, aber ich habe keine Ahnung, wo ich anfangen soll! Gibt es jemanden (vielleicht auch mit Opencart-Erfahrung?), Der mir helfen kann, mich auf den Weg zu machen?

Vielen Dank im Voraus!

Grüße,

George

Antwort

1

ETags sind nicht so kompliziert zu implementieren. Hier ist ein Ausschnitt von Code für Ihre .htaccess-Datei, die ETags für Ihre Bilder und andere Dateien ermöglichen, die nicht so oft ändern:

# ETags Settings (for Cache purposes) 
<ifModule mod_headers.c> 
<FilesMatch \.(?i:jpeg|jpg|gif|png|css|js|xml)$> 
    FileETag MTime Size 
</FilesMatch> 

<FilesMatch \.(?i:php)$> 
    Header unset ETag 
    Header set Cache-Control "max-age=0, private, no-store, no-cache, must-revalidate" 
    Header set Pragma "no-cache" 
    FileETag None 
</FilesMatch> 
</ifModule> 

# Expires Settings 
<IfModule mod_expires.c> 
ExpiresActive On 
ExpiresDefault "access plus 1 month" 

# Images 
ExpiresByType image/gif "access plus 1 month" 
ExpiresByType image/png "access plus 1 month" 
ExpiresByType image/jpg "access plus 1 month" 
ExpiresByType image/jpeg "access plus 1 month" 
</IfModule> 

Nur ein wenig Hintergrund (obwohl ich bin sicher, dass Sie bereits wissen) und Erklärung:

ETags sind zuverlässiger als läuft ab aufgrund der Tatsache, dass Browser, die die Verfalls-Direktive einhalten, das Bild/die Datei nicht für die angegebene Lebensdauer ändern, unabhängig davon, ob es irgendwelche Änderungen gibt. ETags können jedoch konfiguriert werden, um einen Browser anzugeben, wann das Bild geändert werden soll.

Im Code oben angegebenen FileETag MTime Größe wird Browser Aktualisierung der Bilder, CSS, JS und XML-Dateien (die i: ist ein Groß- und Kleinschreibung Spiel zu tun), wenn es irgendwelche Änderungen in der Größe oder Änderung sind Zeit. Und der beste Teil: es ersetzt erloschene Direktiven!

Auch der obige Code deaktiviert ETags für PHP-Dateien aufgrund der dynamischen Natur des Inhalts.

Ich habe die "expires" -Direktiven für Bilder eingefügt, weil, während ich dies schreibe, viele Geschwindigkeitsprüfer und Validierer Sie ein wenig herabsetzen, um sie nicht zu haben, selbst wenn ETags gesetzt sind.

+0

Vielen Dank für Ihre klare Antwort! Momentan überschwemmt mich mein Manager mit der Arbeit, also werde ich das jetzt nicht richtig testen können, aber wenn ich die Zeit finde, werde ich dich über meine Ergebnisse informieren. –

+0

Hoffe es funktioniert für dich :) – Kirito