2016-05-08 7 views
0

Ich habe meine Website mit Magento und Anguar js entwickelt. Von Google-Seite Insights, ich habe, dass ich Browser-Caching nutzen muss. Also für das, ich habe meine .htaccess-Datei lke folgt definiert:Nutzen Browser Caching in Site

RewriteEngine On 
Options FollowSymLinks 

RewriteBase/

RewriteCond %{HTTP_USER_AGENT} (facebookexternalhit/[0-9]|Twitterbot|Pinterest|Google.*snippet) 
RewriteRule ^(.*)$ story.php?id=$1 [L,QSA] 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{HTTP_USER_AGENT} !facebookexternalhit/[0-9] 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ /#/$1 [L] 

<IfModule mod_headers.c> 
    # YEAR 
    <FilesMatch "\.(ico|gif|jpg|jpeg|png|flv|pdf)$"> 
      Header set Cache-Control "max-age=29030400" 
    </FilesMatch> 
    # WEEK 
    <FilesMatch "\.(js|css|swf|woff)$"> 
     Header set Cache-Control "max-age=604800" 
    </FilesMatch> 
    # 45 MIN 
    <FilesMatch "\.(html|htm|txt)$"> 
     Header set Cache-Control "max-age=86400" 
    </FilesMatch> 

    Header set Connection keep-alive 

</IfModule> 

Aber das funktioniert nicht wie die Google-Einsicht noch die gleiche Meldung zeigt.

+0

Versuchen Sie es mit 'mod_expires' statt: https://devdocs.io/apache_http_server/mod/mod_expires – hjpotter92

+0

sollte ich es in Apache CNF-Datei oder .htaccess-Datei verwenden – androider

Antwort

0

Sie sollten mod_expires verwenden, um zu überprüfen, welche Assets nach einer bestimmten Zeit neu geladen werden sollten. In Ihrer .htaccess Datei können Sie es wie so konfigurieren können:

<IfModule mod_expires.c> 
    ExpiresActive On 
    ExpiresDefault "access plus 2 days" 
    ExpiresByType image/gif "access plus 2592000 seconds" 
    ExpiresByType image/jpeg "access plus 2592000 seconds" 
    ExpiresByType image/png "access plus 2592000 seconds" 
    ExpiresByType text/javascript "access 1 month" 
    ExpiresByType text/x-javascript "access 1 month" 
    ExpiresByType application/javascript "access 1 month" 
    ExpiresByType application/x-javascript "access 1 month" 
    ExpiresByType application/json "access 1 month" 
</IfModule> 

Wie Sie auf eine ExpiresDefault von 2 Jahren gibt es von Zugriffszeit zu sehen. Für alle Bilder und Javascripts können Sie die Zeit erkennen. Wenn Sie andere Werte benötigen, können Sie umfangreiche Dokumente finden Sie hier http://httpd.apache.org/docs/current/mod/mod_expires.html

Verwandte Themen