咱們在平常運維工做中有一些問題,在訪問站點的時候有不少小圖片還有logo,各類各樣的圖片,chrom按F12能夠看到它的一些元素,這裏麪包含了不少png,gif,js這些圖片文件他們佔用了很大的元素和空間,這個時候咱們爲了把網頁傳輸的大小變小,咱們能夠把這些靜態的文件在我們瀏覽器這一側作一個暫存,在服務端咱們apache配置上是能夠配置規定它的緩存多少時間的,當過了這個時間以後從新請求進行刷新,那就意味着咱們這個網站會有不少次這樣的請求,每一次請求的話就不會再去服務端調用它,這樣就可以解決很大的帶寬資源,原本咱們的一個頁面有50K,當你把這些文件緩存以後呢可能就只要10K,它能夠節省很大一部分帶寬,那咱們怎樣去配置呢,編輯虛擬主機配置文件:javascript
[root@zhangmengjunlinux ~]# !vimcss
vim /usr/local/apache2/conf/extra/httpd-vhosts.conf java
加入一段配置,它用到的模塊叫「expires",之後配置靜態緩存的時候徹底能夠拷貝這個模板linux
<IfModule mod_expires.c>apache
ExpiresActive onvim
ExpiresByType p_w_picpath/gif "access plus 1 days"瀏覽器
ExpiresByType p_w_picpath/jpeg "access plus 24 hours"緩存
ExpiresByType p_w_picpath/png "access plus 24 hours"app
ExpiresByType text/css "now plus 2 hours"運維
ExpiresByType application/x-javascript "now plus 2 hours"
ExpiresByType application/x-shockwave-flash "now plus 2 hours"
ExpiresDefault "now plus 0 min"
</IfModule>
這個單位能夠是‘天、小時、分鐘、月’
咱們用curl去測試一下
[root@zhangmengjunlinux ~]# curl -x192.168.140.100:80 'http://www.test.com/static/p_w_picpath/common/logo.png' -I
HTTP/1.1 200 OK
Date: Thu, 31 Dec 2015 06:15:07 GMT
Server: Apache/2.2.31 (Unix) PHP/5.3.27
Last-Modified: Tue, 08 Dec 2015 02:39:16 GMT
ETag: "e3366-1149-52659e1375d00"
Accept-Ranges: bytes
Content-Length: 4425
Cache-Control: max-age=86400
Expires: Fri, 01 Jan 2016 06:15:07 GMT
Content-Type: p_w_picpath/png
這個地方多了一個max-age=86400 一天