欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

请教nginx中fastcgi缓存过期时间,以及如何清理缓存的问题

程序员文章站 2022-05-25 14:02:03
...

首先是问题1:nginx缓存过期时间
我在conf中设置了300秒过期,但是我更新了博客日志页面300秒后,刷新页面并没有更新

如:
小伙伴们惊呆了!10行 JavaScript 实现文本编辑器
http://levi.cg.am/archives/3066

请教nginx中fastcgi缓存过期时间,以及如何清理缓存的问题
请问这是为什么?

问题2:如何清理缓存
我发现nginx都会将缓存存放在指定目录,且以缓存文件名最后四位来设置目录,例如:
请教nginx中fastcgi缓存过期时间,以及如何清理缓存的问题

我想缓存的名称应该是MD5,如果将这个缓存文件删除了,那么就能成功删除指定页面的缓存。
但是这个MD5好像并不是根据URL来判断的,还是上面那个链接,在PHP中输入:

echo md5('http://levi.cg.am/archives/3066');
// output 4099cbf6f33f521b84cdb94d707f5758

好像并没有4099cbf6f33f521b84cdb94d707f5758 这个文件
请教nginx中fastcgi缓存过期时间,以及如何清理缓存的问题

我看了conf中我设置的fastcgi缓存的key

fastcgi_cache_key $request_method://$host$request_uri;

请教nginx中fastcgi缓存过期时间,以及如何清理缓存的问题

应该就是域名才对,难道说nginx中的md5和php中的md5不一致?请问如何得知指定页面的缓存文件呢?

回复内容:

首先是问题1:nginx缓存过期时间
我在conf中设置了300秒过期,但是我更新了博客日志页面300秒后,刷新页面并没有更新

如:
小伙伴们惊呆了!10行 JavaScript 实现文本编辑器
http://levi.cg.am/archives/3066

请教nginx中fastcgi缓存过期时间,以及如何清理缓存的问题
请问这是为什么?

问题2:如何清理缓存
我发现nginx都会将缓存存放在指定目录,且以缓存文件名最后四位来设置目录,例如:
请教nginx中fastcgi缓存过期时间,以及如何清理缓存的问题

我想缓存的名称应该是MD5,如果将这个缓存文件删除了,那么就能成功删除指定页面的缓存。
但是这个MD5好像并不是根据URL来判断的,还是上面那个链接,在PHP中输入:

echo md5('http://levi.cg.am/archives/3066');
// output 4099cbf6f33f521b84cdb94d707f5758

好像并没有4099cbf6f33f521b84cdb94d707f5758 这个文件
请教nginx中fastcgi缓存过期时间,以及如何清理缓存的问题

我看了conf中我设置的fastcgi缓存的key

fastcgi_cache_key $request_method://$host$request_uri;

请教nginx中fastcgi缓存过期时间,以及如何清理缓存的问题

应该就是域名才对,难道说nginx中的md5和php中的md5不一致?请问如何得知指定页面的缓存文件呢?