更正 HT访问缓存参数



我一直在阅读htaccess缓存的主题,以帮助提高我网站的速度。 我根据来自不同网站来源的信息将以下内容放在一起,因为我想提高我的 cms 的速度。

有人可以告诉我这是否是使用参数的正确方法吗?

### caching rules
<IfModule mod_mime.c>
    AddType application/x-javascript .js
    AddType text/css .css
</IfModule>
<IfModule mod_deflate.c>
    #AddOutputFilterByType DEFLATE text/text text/html text/plain text/xml text/css application/x-javascript application/javascript
    AddOutputFilterByType DEFLATE text/css application/x-javascript text/x-component text/html text/richtext image/svg+xml text/plain text/xsd text/xsl text/xml image/x-icon application/javascript
    <IfModule mod_setenvif.c>
    BrowserMatch ^Mozilla/4 gzip-only-text/html
    BrowserMatch ^Mozilla/4.0[678] no-gzip
    BrowserMatch bMSIE !no-gzip !gzip-only-text/html
    </IfModule>
    <IfModule mod_headers.c>
    Header append Vary User-Agent env=!dont-vary
    </IfModule>
</IfModule>
<IfModule mod_deflate.c>
    SetOutputFilter DEFLATE
    <IfModule mod_setenvif.c>
        SetEnvIfNoCase Request_URI .(?:rar|zip)$ no-gzip dont-vary
        SetEnvIfNoCase Request_URI .(?:gif|jpg|png)$ no-gzip dont-vary
        SetEnvIfNoCase Request_URI .(?:avi|mov|mp4)$ no-gzip dont-vary
        SetEnvIfNoCase Request_URI .mp3$ no-gzip dont-vary
    </IfModule>
</IfModule>
<IfModule mod_gzip.c>
    mod_gzip_on Yes
    mod_gzip_dechunk Yes
    mod_gzip_item_include file .(html?|txt|css|js|php|pl)$
    mod_gzip_item_include handler ^cgi-script$
    mod_gzip_item_include mime ^text/.*
    mod_gzip_item_include mime ^application/x-javascript.*
    mod_gzip_item_exclude mime ^image/.*
    mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
</IfModule>
Header unset Pragma
FileETag None
Header unset ETag
<IfModule mod_headers.c>
    Header unset ETag
</IfModule>
FileETag None
<FilesMatch ".(ico|jpg|jpeg|png|gif|js|css|swf|pdf|flv|mp3)$">
<IfModule mod_expires.c>
    ExpiresActive on
    ExpiresDefault "access plus 14 days"
    Header set Cache-Control "public"
</IfModule>
</FilesMatch>
<FilesMatch ".(html|htm|xml|txt|xsl)$">
    Header set Cache-Control "max-age=7200, must-revalidate"
</FilesMatch>
<IfModule mod_expires.c>
    ExpiresActive On
    #ExpiresDefault "access plus 1 week"
    ExpiresDefault "access plus 86400 seconds"
    ExpiresByType image/x-icon "modification plus 1 year"
    ExpiresByType image/gif "access plus 1 year"
    ExpiresByType image/png "access plus 1 year"
    ExpiresByType image/jpeg "access plus 1 year"
    ExpiresByType image/jpg "access plus 1 year"
    ExpiresByType text/js "access plus 1 month"
    ExpiresByType text/javascript "access plus 1 month"
    ExpiresByType application/javascript "access plus 1 month"
    ExpiresByType application/x-javascript "access plus 1 month"
    ExpiresByType application/x-shockwave-flash "access plus 1 month"
    ExpiresByType video/x-flv "access plus 1 month"
    ExpiresByType application/pdf "access plus 1 month"
    #ExpiresByType text/html "access plus 1 day"
    #ExpiresByType text/css "access plus 1 day"
    #ExpiresByType application/xhtml+xml "access plus 1 day"
    #ExpiresByType text/plain "access plus 1 month"
    #ExpiresByType text/javascript "access plus 604800 seconds"
    #ExpiresByType application/javascript "access plus 604800 seconds"
</IfModule>

以下行需要从以下位置更新:

SetEnvIfNoCase Request_URI .(?:gif|jpg|png)$ no-gzip dont-vary

SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary

您似乎也有一些重复:

Header unset Pragma
FileETag None
Header unset ETag
<IfModule mod_headers.c>
    Header unset ETag
</IfModule>
FileETag None

此外,值得合并您的<IfModule>指令,因此mod_expires的所有指令都位于一个位置,您还应该删除重复的过期设置。 例如

<FilesMatch ".(ico|jpg|jpeg|png|gif|js|css|swf|pdf|flv|mp3)$">
  <IfModule mod_expires.c>
    ExpiresActive on
    ExpiresDefault "access plus 14 days"
    Header set Cache-Control "public"
  </IfModule>
</FilesMatch>

被覆盖

<IfModule mod_expires.c>
    ExpiresActive On
    ExpiresDefault "access plus 86400 seconds"
    ExpiresByType image/x-icon "modification plus 1 year"
    ExpiresByType image/gif "access plus 1 year"
    ExpiresByType image/png "access plus 1 year"
    ExpiresByType image/jpeg "access plus 1 year"
    ExpiresByType image/jpg "access plus 1 year"
    ExpiresByType text/js "access plus 1 month"
    ExpiresByType text/javascript "access plus 1 month"

除此之外,是的。

最新更新