手动清除 nginx 缓存会导致日志文件中出现错误



我试图在CMS(ExpressionEngine)发布新内容时清除nginx缓存。 我一直在清除整个文件夹并让缓存自行重建。 它似乎工作正常,但它正在用这些条目填满错误日志:

2014/12/15 12:35:09 [crit] 21686#0: unlink() "/var/nginx/cache/default/6197dda0a6cadcec5563533cb6027580" failed (2: No such file or directory)
2014/12/15 12:35:10 [crit] 21686#0: unlink() "/var/nginx/cache/default/bb8eca6b51c655989bd717a9708b244e" failed (2: No such file or directory)
2014/12/15 12:35:10 [crit] 21686#0: unlink() "/var/nginx/cache/default/6f9b9aea38c5761a87cffd365e51e7a4" failed (2: No such file or directory)

似乎nginx会跟踪缓存文件,并在我已经这样做后清除它们时感到困惑。

有没有更好的方法来清除不会导致这些错误的缓存?

在我的头顶上,一种方法是在nginx中指定秘密标头,这将绕过缓存,从而理论上清除现有文件。

而且,你这样做的方式也没有错。唯一丑陋的是这些日志,它们总是显示为 [crit] ,它们不是手动清除的情况。:)

"当NGINX本身在fastcgi_cache_path指令的非活动参数指定的时间之后尝试删除缓存条目时,似乎会发生这些错误。默认值仅为 10 分钟,但您可以将其设置为所需的任何值。我自己将其设置为 7 天,这似乎效果很好,因为我在更改它后根本没有看到此错误。

来源: https://www.miklix.com/nginx/deleting-nginx-cache-puts-critical-unlink-errors-in-error-log/

最新更新