我不知道这是 Ubuntu、VirtualBox 还是 nginx 的问题。
我在 Ubuntu 上运行 nginx,它是 Windows 7 上的 VirtualBox 来宾。Windows 7 文件夹在 VirtualBox 中安装为自动安装、只读共享文件夹。 Ubuntu 将该文件夹视为 /media/sf_jsource
现在,如果我在 Windows 7 上编辑该文件夹中的文件,Ubuntu 上的 shell 命令 (cat) 就会看到新内容。这似乎意味着 VirtualBox 和 Ubuntu 很好地接受了新的变化。
然而,在 Ubuntu 上运行的 nginx 服务器仍然提供过时的内容。这表明问题出在 nginx 缓存文件上。我用谷歌搜索了一下,看到了一些禁用 nginx 缓存的条目(2010 年、2011 年)。但是,我没有在 nginx 配置中启用任何缓存,并且没有看到任何要清除的 /var/cache/nginx 或 /opt/cache/nginx 目录。
现在,有趣的是,重新启动 nginx 并不能解决问题。我必须重新启动 Ubuntu 来宾才能让 nginx 看到新内容,这没有意义,因为 Ubuntu 中的 cat 在重新启动之前无论如何都会看到更改。
几乎所有内容(nginx、Ubuntu、VirtualBox)都是 2012 年初的最新版本。
一些事实:
如果您没有在 nginx 中启用缓存,那么 nginx 将不会提供缓存内容。
如果重新启动 nginx,任何缓存的内容在任何情况下都会被丢弃。
结论:从浏览器本身开始,缓存发生在请求周期的多个级别。由于事实表明缓存不是由 Nginx 进行的,因此您需要从浏览器开始研究其他可能的缓存位置。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)