尽管进行了修改,仍无法清除 Nginx 缓存
如果您遇到以下问题:尽管文件已修改,Nginx 前端服务器仍继续提供过时的 CSS 文件,你并不孤单。尽管重新启动 Nginx 并在网上搜索,但可能没有找到解决方案。
建议的删除缓存目录(例如 var/cache/nginx)的解决方案可能并不适用于所有情况,因为您的服务器可能缺少
解决方案:
问题可能源于 nginx.conf 文件中启用的 sendfile 设置。此设置旨在优化文件传输,但在 Virtualbox 等虚拟机环境中可能会出现故障。禁用 sendfile 将强制 Nginx 使用替代方法来提供静态文件,从而解决缓存问题。
此行为归因于特定于的错误 (https://www.virtualbox.org/ticket/12597) Virtualbox 环境中,Virtualbox 在执行 sendfile 操作时遇到困难。
要禁用 sendfile,请在 nginx.conf 文件中找到该设置(通常位于位置块中)并将其值更改为“off”:
sendfile off;
进行此更改后重新启动 Nginx,您应该能够提供更新的 CSS 文件而不会出现其他问题。
以上是为什么我的 Nginx 缓存在文件修改后仍未清除?的详细内容。更多信息请关注PHP中文网其他相关文章!