Wie setze ich Ablaufheader für CSS, JS und Bilder?
38
Ich habe kürzlich meine Website mit Pagespeed Addon auf Firebug analysiert. Es schlug mir vor, das Ablaufdatum für CSS-, JS- und Bilddateien festzulegen.
Ich erhalte den Fehler 500 Interner Server, wenn ich ihn in meine .htaccess-Datei
KoolKabin 11.11.10
Ihr Apache-Setup unterstützt möglicherweise nicht alle der oben aufgeführten Optionen. Ich werde diese Antwort in Kürze aktualisieren, um das Problem zu beheben.
John Conde
Mein Drupal enthält Javascript / CSS-Referenzen wie: www.example.com/misc/jquery.js?v=1.4.4 oder www.example.com/sites/all/modules/nice_menus/css/nice_menus.css?mtu293 scheint für solche Dateien nicht zu funktionieren. Wird es ab heute aktualisiert?
28.
2
@ JohnConde Warum beide abläuft und Header? Muss die Datei auch umbenannt werden, wenn beispielsweise ein Image oder ein CSS aktualisiert wird? Oder für eine CSS-Datei funktioniert die Versionierung: test.css? 123?
Riseagainst
14
Sie können dies in Ihren htaccess setzen:
<FilesMatch"(?i)^.*\.(ico|flv|jpg|jpeg|png|gif|js|css)$">
ExpiresActive On
ExpiresDefault A2592000</FilesMatch>
Es zielt auf Dateien mit diesen Erweiterungen (ico, flv, jpg usw.) ab und setzt den Expires-Header auf Zugriffszeit (A) plus 30 Tage (2592000 Sekunden). Sie können dies auch auf Serverebene hinzufügen, wenn Sie Zugriff darauf haben.
Es hängt vom Host und der Art und Weise ab, wie Sie diese Dinge servieren. Option 1) Wenn Sie den Server steuern, lassen Sie den Apache Ablaufheader in der Antwort hinzufügen. Option 2) Wenn Sie den Webserver nicht steuern, oder wenn Sie die Datei images / js / css / etc servern, können Sie diese Header über das entsprechende Skript festlegen Server sie
Bedenken Sie, dass diese Hinweise empfehlenswert sind, aber nicht die absolute Wahrheit. Sie dienen eher dazu, Ihnen Bandbreite zu sparen, als Ihre Website zu beschleunigen. Also, wenn Sie einen geringen Datenverkehr auf Ihrer Website haben, machen Sie sich darüber keine allzu großen Sorgen.
Ich bin mit Option 2. Wie setze ich diese Header aus dem Skript. Script bedeutet PHP oder welches?
KoolKabin
Sie können stackoverflow.com/questions/2185449/… überprüfen . Dies ist ein Python-Beispiel, aber wenn Sie mit der Programmierung vertraut sind, werden Sie auf die Idee kommen. In PHP müssen Sie Header () verwenden. Beachten Sie jedoch, dass in diesem Fall alle "statischen" Dateien über das Skript bereitgestellt werden müssen, wodurch sich Ihre CPU-Quote erhöht. Jetzt ist mir klar, dass es eine dritte Option gibt. Verwenden Sie CDN für diese Dateien.
Ilian Iliev
2
Das Einrichten läuft in Lightspeed Web Server ab
Melden Sie sich bei Admin Console an und wählen Sie> Server-> Allgemein-> Läuft Einstellungen-> Läuft nach Typ ab
604800 sind die Sekunden des Ablaufs , die für Ihre Bedürfnisse geeignet sein sollten, da es sich bei 168 Stunden um 7 Tage handelt. Zusätzlich verwendet Light Speed Server einen htaccess, den Sie benötigen, um die folgende Zeile hinzuzufügen:
ExpiresActiveOn
Alternativ können Sie die folgende .htaccess-Datei verwenden, wenn Sie keinen Zugriff auf die Administratorkonsole haben:
Sie können dies in Ihren htaccess setzen:
Es zielt auf Dateien mit diesen Erweiterungen (ico, flv, jpg usw.) ab und setzt den Expires-Header auf Zugriffszeit (A) plus 30 Tage (2592000 Sekunden). Sie können dies auch auf Serverebene hinzufügen, wenn Sie Zugriff darauf haben.
quelle
Es hängt vom Host und der Art und Weise ab, wie Sie diese Dinge servieren. Option 1) Wenn Sie den Server steuern, lassen Sie den Apache Ablaufheader in der Antwort hinzufügen. Option 2) Wenn Sie den Webserver nicht steuern, oder wenn Sie die Datei images / js / css / etc servern, können Sie diese Header über das entsprechende Skript festlegen Server sie
Bedenken Sie, dass diese Hinweise empfehlenswert sind, aber nicht die absolute Wahrheit. Sie dienen eher dazu, Ihnen Bandbreite zu sparen, als Ihre Website zu beschleunigen. Also, wenn Sie einen geringen Datenverkehr auf Ihrer Website haben, machen Sie sich darüber keine allzu großen Sorgen.
quelle
Das Einrichten läuft in Lightspeed Web Server ab
Melden Sie sich bei Admin Console an und wählen Sie> Server-> Allgemein-> Läuft Einstellungen-> Läuft nach Typ ab
Fügen Sie Folgendes hinzu:
604800 sind die Sekunden des Ablaufs , die für Ihre Bedürfnisse geeignet sein sollten, da es sich bei 168 Stunden um 7 Tage handelt. Zusätzlich verwendet Light Speed Server einen htaccess, den Sie benötigen, um die folgende Zeile hinzuzufügen:
Alternativ können Sie die folgende .htaccess-Datei verwenden, wenn Sie keinen Zugriff auf die Administratorkonsole haben:
quelle