清除 Nginx 缓存:解决 CSS 缓存问题
当您将 nginx 作为前端服务器时,您会遇到 CSS 修改的问题尽管重新启动服务器,仍无法反映在您的网站上。这个令人困惑的问题促使您向大量的在线资源寻求指导,但无济于事。
一个常见的误解是删除了 var/cache/nginx 中假定的缓存目录,却发现它在您的计算机上不存在。服务器。相反,分析您的 nginx 配置会发现一个更微妙的问题。
Sendfile 的作用
Sendfile 是一个 nginx 配置参数,已知会导致虚拟机中的缓存问题机器环境,特别是使用 Virtualbox 时。该参数旨在优化文件描述符之间的数据传输,但在虚拟化场景中使用时会产生困难。
要解决此问题,请禁用 nginx.conf 中的 sendfile 选项。通过这样做,nginx 将采用另一种方法来提供静态文件,从而消除缓存问题。
技术解释
Sendfile 本质上弥补了两个文件描述符之间的差距,允许数据无缝传输。然而,虚拟环境(例如 Virtualbox)中会出现冲突行为。停用 sendfile 会迫使 nginx 使用不同的方法,确保及时反映文件修改。
其他见解
此缓存问题与 Virtualbox 中记录的错误密切相关: https://www.virtualbox.org/ticket/12597。通过如上所述解决 sendfile 参数,您可以有效解决 CSS 修改与网站显示内容之间的差异。
以上是为什么即使重新启动服务器后,我的 CSS 更改也没有显示在 Nginx 中?的详细内容。更多信息请关注PHP中文网其他相关文章!