nginxでコンテンツをキャッシュするメモ
前回Varnishで行ったのと同じキャッシュをnginxで行うメモ。purgeが厄介だったのでボツになりましたが、用途によってはこちらで十分かもしれません。
proxy_cache_path /path/to/cache levels=1:2 keys_zone=cache-space:4m max_size=50m inactive=120m;proxy_temp_path /path/to/tmp;
server { # 携帯電話からのアクセスの場合trueになる set $mobile false; if ($http_user_agent ~* "DoCoMo|KDDI|SoftBank|Vodafone") { set $mobile true; }
location / { proxy_cache cache-space; proxy_cache_key "$scheme$host$request_uri$mobile"; # キャッシュの識別子に携帯電話かどうかのフラグを含める proxy_cache_valid 1h; proxy_pass http://localhost:9000; }}