http://jybb.me/nginx-fastcgi_cache
說到緩存,想到的大部分都是Memcache、Xcache、Proxy_Cache,FastCgi Cache貌似一直被人忽略中,FastCgi緩存也是不錯的(我也最近才聽說)
引用某人的一句話
lnmp一鍵包沒開啟fastcgi cache是一大敗筆
開啟FastCGI Cache步驟非常簡單
1、建立檔案夾存放緩存檔案
1
mkdir /home/cache/fcgi -p
2、修改nginx.conf檔案(LNMP一鍵包目錄在/usr/local/nginx/conf/nginx.conf),在http層加入:
2
fastcgi_cache_path
/home/cache/fcgi
levels=1:2
keys_zone=fcgi:15m
inactive=1d
max_size=1g;
#15m為記憶體占用 1g為硬碟最大占用空間
3、修改位于vhost目錄下的站點檔案
3
4
5
6
7
8
9
10
11
12
13
14
15
location ~ .*\.(php|php5)?$
{
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /home/wwwroot/網站目錄$fastcgi_script_name; #把網站目錄修改成自己的
include fastcgi_params;
fastcgi_cache fcgi; #表示開啟FastCGI緩存并為其指定一個名稱。
fastcgi_cache_valid 200 302 301 1h; #緩存http狀态200 302 301 1小時
fastcgi_cache_valid any 1m; #其他應答代碼緩存1分鐘。
fastcgi_cache_min_uses 1; #設定連結請求幾次就被緩存。
fastcgi_cache_use_stale error timeout invalid_header http_500; #定義哪些情況下用過期緩存
fastcgi_cache_key $request_method://$host$request_uri; #注意一定要加上$request_method作為cache key,否則如果HEAD類型的先請求會導緻後面的GET請求傳回為空
}
4、重新開機nginx即可
/etc/init.d/nginx
restart
5、打開站點,看緩存目錄是否增大
du
-sh