说到缓存,想到的大部分都是Memcache、Xcache、Proxy_Cache,FastCgi Cache貌似一直被人忽略中,FastCgi缓存也是不错的(我也最近才听说)
开启FastCGI Cache步骤非常简单
1
、新建文件夹存放缓存文件
mkdir
/
home
/
cache
/
fcgi
-
p
2
、修改nginx.conf文件(LNMP一键包目录在/usr/local/nginx/conf/nginx.conf),在http层加入:
fastcgi_cache_path
/
home
/
cache
/
fcgi
levels
=
1
:
2
keys_zone
=
fcgi
:
15m
inactive
=
1d
max_size
=
1g
;
#15m
为内存占用 1g为硬盘最大占用空间
3
、修改位于vhost目录下的站点文件
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
/
home
/
cache
/
fcgi