I have cache setup like this:
proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=pagecache:10m;
location / {
...
proxy_cache pagecache;
proxy_cache_key "$scheme://$host$request_uri";
}
And it works as expected.
I want cache purging and it works for single url, but not for wildcard url. I am looking this doc http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_cache_purge.
For example I have page http://cms.local/gsm and if I do proxy_cache_purge pagecache "http://cms.local/gsm"; it is removed from cache, but proxy_cache_purge pagecache "http://cms.local/*"; doesn't have any effect. My config with purge looks like this:
proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=pagecache:10m;
location / {
error_page 477 = @purge;
if ($request_method = PURGE) {
return 477;
}
proxy_cache pagecache;
proxy_cache_key "$scheme://$host$request_uri";
}
location @purge {
access_log /var/log/nginx/caching.purge.log;
proxy_cache_purge pagecache "http://cms.local/*";
#proxy_cache_purge pagecache "$scheme://$host$request_uri";
}
Am I missing something?
I am using nginx 1.6 on ubuntu 12.04.