wm4414
wm4414
2017-11-15 04:51

nginx proxy_cache有问题,浏览器访问正常缓存,爬虫curl抓取全部绕过?

10
  • curl
  • nginx
  • 缓存

ngnix反向代理。

http配置:
add_header X-Cache-Status $upstream_cache_status;
proxy_cache_path /var/cache/nginx/w levels=1:2 keys_zone=w:150m inactive=10d max_size=10G;
proxy_cache_path /var/cache/nginx/m levels=1:2 keys_zone=m:150m inactive=10d max_size=10G;
proxy_cache_key $host$uri$is_args$args;
proxy_cache_valid 200 1h;
proxy_cache_methods GET;

server中调用配置:
proxy_cache w;
对应移动站调用配置:
proxy_cache m;

两个server都配置:
proxy_ignore_headers X-Accel-Expires Expires Cache-Control Set-Cookie;

同一URL,pc和wap浏览器访问都能正常缓存,各种搜索引擎爬虫抓取,却全部绕过,直接访问上游。
发现问题后自己测试,不同ip主机,同一个URL,不清空缓存重复curl访问,第一次访问都是MISS,第二次才HIT?
完全搞不懂了,求大神指点迷津。

  • 点赞
  • 回答
  • 收藏
  • 复制链接分享

1条回答