文章目录
ngx_http_fastcgi_module
fastcgi_cache_path
- path 缓存位置为磁盘上的文件系统路径
- levels=levels 缓存目录的层级数量,以及每一级的目录数量
示例:leves=1:2:2 - keys_zone=name:size
k/v映射的内存空间的名称及大小 - inactive=time 非活动时长
- fastcgi_cache zone|off;
调用指定的缓存空间来缓存数据,可用位置:http、server、location - fastcgi_cache_key string;
定义用作缓存项的key的字符串
示例:fastcgi_cache_key $request_uri; - fastcgi_cache_methods GET|HEAD|POST …;
为哪些请求方法使用缓存 - fastcgi_cahce_min_users numbers;
缓存项在inactive定义的非活动时间内至少要被访问到指定的次数方可被认作活动项 - fastcgi_keep_conn on|off;
收到后端服务器响应后,fastcgi服务器是否关闭连接,建议启用长连接 - fastcgi_cache_valid [code …] time;
不同的响应码各自的缓存时长 - 示例:
http {
fastcgi_cache_path /var/cache/nginx/fcgi_cache levels=1:2:1 keys_zone=fcgicache:20m inactive=120s max_size=1g;
}
server {
listen 80;
server_name www.fastcgi-cache.com;
root /data/fastcgi-cache/;
index index.php index.html;
location ~*\.php$ {
root /data/php/;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
#fastcgi_param SCRIPT_FILENAME /data/php$fastcgi_script_name;
include fastcgi_params;
include fastcgi.conf;
fastcgi_cache fcgicache;
fastcgi_cache_key $request_uri;
fastcgi_cache_valid 200 302 10m;
fastcgi_cache_valid 301 1h;
fastcgi_cache_valid any 1m;
add_header X-Cache $upstream_cache_status;
}
}