当访问http://example.com/其空白,但与http://example.com/index.php工作良好,我需要删除http://example.com/ nginxcaching文件如何做到这一点? 在这里我的nginxcachingconf。
fastcgi_cache_path /backup/cache levels=1:2 keys_zone=my-cache:1000m inactive=1000m; fastcgi_temp_path /backup/cache/tmp 1 2; fastcgi_cache_key "$scheme://$host$request_uri";
如何获取/ backup / cache文件夹中的caching文件名?
一种方法,例如,但相当灵活的多function
将此行添加到nginx.conf …
proxy_cache_bypass $http_x_update;
…你可以随时更新任何uricaching与简单的HTTP请求与“魔术”头。 例如
curl -s -o /dev/null -H "X-Update: 1" mydomain.com
要么
curl -s -o /dev/null -H "X-Update: 1" mydomain.com/some/long/url/
为了安全和满足偏执:D你可以改变标题名称为任何blablabla,例如
proxy_cache_bypass $http_x_gangnamstyle; #proxy_cache_bypass $http_x_mycatsnickname; #proxy_cache_bypass $http_x_b2ca678b4c936f905fb82f2733f5297f;
和
curl -s -o /dev/null -H "X-GangnamStyle: 1" mydomain.com curl -s -o /dev/null -H "X-mycatsnickname: 1" mydomain.com curl -s -o /dev/null -H "X-b2ca678b4c936f905fb82f2733f5297f: 1" mydomain.com
你必须在你的configuration中有一个地方这一行,
fastcgi_cache_key *key*;
您需要从那里find相应URL的密钥,然后计算该密钥string的md5。
现在假设md5的值是xm ***** p3w,那么你的URL的caching文件是/ backup / cache / w / p3 / xm ***** p3w。 现在就删除它,无论你希望如何。
另一种自动化的方式,如果你有你的nginx nginx_cache_purge模块,
fastcgi_cache_purge CACHEREGION $cache_key;
其中,CACHEREGION是由fastcgi_cache_path指令定义的caching区域,$ cache_key是fastcgi_cache_key指令的值。
注意:位置块中允许使用fastcgi_cache_purge指令。