Nginx站點緩存設置

網站上線後,有些變化很少的靜態資源,如:css、圖片、font、js等,可以設置客戶端緩存時間,以減少http請求,提高網站運行效率。我們可以利用nginx緩存服務器的靜態資源,達到優化站點目的。

可以使用Nginx的proxy_cache將用戶的請求緩存到一個本地目錄下,當下次請求時可以直接讀取緩存文件,達到減少服務器請求次數的目的。


配置如下

打開nignx.conf配置文件,在http節點加入如下配置:

proxy_connect_timeout 10;
proxy_read_timeout 180;
proxy_send_timeout 5;
proxy_buffer_size 16k;
proxy_buffers 4 64k;
proxy_busy_buffers_size 256k;
proxy_temp_file_write_size 256k;
proxy_temp_path /tmp/site_cache;
proxy_cache_path /tmp/cache levels=1:2 keys_zone=cache_one:100m inactive=1d max_size=1g;

相關說明:

設置臨時目錄:proxy_temp_path /tmp/site_cache;
設置緩存目錄:proxy_cache_path /tmp/cache levels=1:2 keys_zone=cache_one:100m inactive=1d max_size=1g;
levels設置目錄層次,keys_zone設置緩存名字和共享內存大小,inactive在指定時間內沒人訪問則被刪除在這裏是1天,max_size最大緩存空間。


在server節點設置要緩存文件的後綴,配置如下:

location ~ .*\.(gif|jpg|png|css|js|eot|svg|ttf|woff|otf)(.*) {
     proxy_pass http://127.0.0.1:3000;
     proxy_redirect off;
     proxy_set_header Host $host;
     proxy_cache cache_one;
     proxy_cache_valid 200 302 24h;
     proxy_cache_valid 301 30d;
     proxy_cache_valid any 5m;
     expires 30d;
}

相關說明:

非緩存頁面跳轉對應站點:proxy_pass http://127.0.0.1:3000;
設置緩存共享內存:proxy_cache cache_one;
設置http狀態碼爲200,302緩存時間,24h爲24小時:proxy_cache_valid 200 302 24h;
設置失期時間爲30天:expires 30d


原文來自:http://itbilu.com/linux/management/NyftMat.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章