码迷,mamicode.com
首页 > 系统相关 > 详细

cache 控制

时间:2015-10-22 06:44:41      阅读:204      评论:0      收藏:0      [点我收藏+]

标签:

cache 控制

cache 控制

expire

expires -1s        永远过期
expires 200s       缓存 200 秒
expires 30m        缓存 30 分
expires 2h         缓存 2 小时

expires 200s 相当于 Cache-Control: max-age=200

使用 cache-control, 如下

add_header Cache-Control max-age=200;

具体: http_cache

proxy cache (放在 http 段中)

? mkdir /data/proxy_temp_path
? mkdir /data/proxy_cache_path
proxy_store on|off
proxy_temp_path /data/proxy_temp_path;
proxy_cache_path /data/proxy_cache_path levels=1:2 keys_zone=cache_one:500m inactive=1d max_size=30g;
    /data/proxy_cache_path    表示缓存文件路径
    levels                    表示缓存空间有两层, 第一层为 1 个字母, 第二层为 2 个字母
    keys_zone                 缓存的名字
    500m                      缓存空间大小
    inactive 1d               1 天内没有被访问就删除
    max_size 30g              硬盘缓存空间

根据状态码来缓存

proxy_cache_valid 200 302 10m;
proxy_cache_valid any 1m;
proxy_cache_methods: GET HEAD (默认, 没有 POST)
proxy_cache_key $host$request_uri$cookie_user;
proxy_cache_min_users 1;      请求被响应就缓存
proxy_cache_user_stale error timeout;   提供过期或者错误的缓存
proxy_max_temp_file_size 1g;     cache 文件的大小
proxy_temp_file_write_size 5m;   cahce 先写到 temp file, 然后再写回 cache file

删除缓存

proxy_cache_purge cache_one $host$uri$is_args$args;

示例:

http {
    ...
    proxy_store on;
    proxy_temp_path /data/proxy_temp_path;
    proxy_cache_path /data/proxy_cache_path levels=1:2 keys_zone=cache_one:500m inactive=1d max_size=30g;
    ...

    server {
        location / {
            proxy_set_header Host $host;
            proxy_set_header X-Forwarded-For $remote_addr;
            proxy_pass http://xxxx;
        }

        location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|js|css)$ {
            proxy_cache_valid 200 304 2h;
            proxy_cache_valid any 1m;

            proxy_cache_key $host$uri$is_args$args;

            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_pass http://xxxx;
        }

        location ~ /purge(/.*) {
            allow 127.0.0.1;
            allow 192.168.1.0/24;
            deny all;
            proxy_cache_purge cache_one $host$1$is_args$args;
        }
    }
}

cache 控制

标签:

原文地址:http://www.cnblogs.com/sunznx/p/4899707.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!