2012-05-30 10 views
5

In httpd.conf die letzten Zeilen sind:Expires-Header funktioniert nicht

ExpiresActive On 
<FilesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|js|css|swf)$"> 
    ExpiresDefault "access plus 3 days" 
</FilesMatch> 

Als ich YSlow laufen sie sagt, alle meine CSS-Dateien (und andere) nicht Ablauf gesetzt haben. Die CSS-Dateien befinden sich in Unterverzeichnissen, aber ich glaube, dass "\." mit allen Dateien übereinstimmen sollte, unabhängig vom Unterverzeichnis.

Apache ist für virtuelle Hosts eingerichtet, aber die obigen Anweisungen befinden sich außerhalb des vhosts-Bereichs ganz unten in httpd.conf.

Es gibt eine Direktive für LoadModule expires_module modules/mod_expires.so in der .conf Datei.

Die Website befindet sich in AWS mit AWS Linux und Apache2. Ich habe Apache neu gestartet, bevor ich überprüft habe, ob es funktioniert hat.

Antwort

7

In Antwort auf Ihre Frage, das funktioniert für mich in meiner httpd.conf:

LoadModule expires_module /usr/lib/apache2/modules/mod_expires.so 
ExpiresActive On 

<filesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|js|css|swf)$"> 
ExpiresDefault "access plus 3 days" 
</filesMatch> 

Hier sind ein paar Dinge zu versuchen:

1) Stellen Sie sicher, mod_expires.so ist, wo Sie denken, es ist. Sie können sehen, welche Module in Ihrem Terminal enthalten sind: apache2 -M.

2) Stellen Sie sicher, dass Ihre Richtlinien auf die Dateien anwenden Sie interessiert sind (dh nicht durch eine .htaccess Datei irgendwo weiter unten auf der Linie)

3) Sicherstellen, dass die LoadModule Richtlinie in Ihrem httpd ist überschrieben zu werden. conf Datei

4) In Ihrem FilesMatch Regex sollten Sie den Punkt mit einem Backslash entkommen, sonst passen Sie jedes Zeichen. Kein großes Problem, aber Sie würden die Regel auf nicht-statische Seiten wie "site.com/politico" anwenden (beachten Sie die ico Endung) zum Beispiel.

+0

Danke für die klare Antwort. Ich hatte alles richtig außer der Platzierung des Codes (your item3). Ich legte es in den virtuellen Host-Bereich für die Website und presto yslow war glücklich! Danke noch einmal. – Jim

+0

Großartig, froh, dass es geholfen hat! – pieman72

Verwandte Themen