簡單教學 apache 配置 Expire/Cache-Control 頭

簡單教學 apache 配置 Expire/Cache-Control 頭

這裏我使用的是Apache2.4.17javascript

打開apache安裝目錄,找到conf目錄,用記事本打開httpd.conf 文件。css

ctrl+f 查找 LoadModule expires_module modules/mod_expires.so
去掉前面 #號!html

在文本最後面添加:java

<IfModule expires_module>
    
    #打開緩存
    ExpiresActive on 
    #css文件緩存7200000/3600/24=83天
    ExpiresByType text/css A7200000

    #js文件緩存83天
    ExpiresByType application/x-javascript A7200000
    ExpiresByType application/javascript A7200000

    #html文件緩存83天
    ExpiresByType text/html A7200000

    #圖片文件緩存83天
    ExpiresByType image/jpeg A7200000
    ExpiresByType image/gif A7200000
    ExpiresByType image/png A7200000
    ExpiresByType image/x-icon A7200000
    
  </IfModule>

上面開啓的是expireapache

下面是cache-control
在文本後面繼續添加瀏覽器

<FilesMatch "\.(flv|gif|jpg|jpeg|png|ico|swf)$">
   Header set Cache-Control "max-age=604800, public"
</FilesMatch>

<FilesMatch "\.(css|js)$">
   Header set Cache-Control "max-age=604800, public"
</FilesMatch>

這裏時間設置不同是爲了檢驗是否成功配置的,由於,沒設cache-control的時候,它會自動根據expire的時間設置本身。緩存

最後重啓apache服務器,ok!服務器

這裏說一個本身爬的坑吧!(那就是若是不出現 200 form cache, 而是出現了304,那是由於,你刷新了瀏覽器。。。想要出現 200 form cache,須要在瀏覽器地址欄裏按回車鍵。)app

也就是說:刷新瀏覽器 觸發 304, 地址欄回車觸發 200 form cache。code

查了很久才發現了,以前一直想不通,既然設置了cache-control和expire爲啥仍是304,這就是緣由,就是這麼簡單。。。

相關文章
相關標籤/搜索