使用fastcgi_cache加速Nginx站点

说到缓存,想到的大部分都是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

 

你可能感兴趣的:(Nginx)