我不知道这是Ubuntu,VirtualBox还是nginx的问题。
我在Ubuntu上运行nginx,Ubuntu是Windows 7上的VirtualBox来宾.Windows 7文件夹作为VirtualBox中的自动挂载只读共享文件夹挂载。 Ubuntu将该文件夹视为/ media / sf_jsource
现在,如果我在Windows 7上编辑该文件夹中的文件,Ubuntu上的shell命令(cat)会看到新内容。这似乎意味着VirtualBox和Ubuntu正在接受新的变化。
但是,在Ubuntu上运行的nginx服务器会继续提供过时的内容。这表明问题出在nginx缓存文件上。我google了一下,看到了几个条目(从2010年,2011年),以禁用nginx缓存。但是,我没有在nginx配置中启用任何缓存,我没有看到任何/ var / cache / nginx或/ opt / cache / nginx目录要清除。
现在,有趣的是重启nginx并不能解决问题。我必须为nginx重新启动Ubuntu guest才能看到新内容,这是没有意义的,因为Ubuntu中的cat在重启之前仍然看到了更改。
几乎所有东西(nginx,Ubuntu,VirualBox)都是截至2012年初的最新版本。
答案 0 :(得分:0)
一些事实:
如果您尚未在nginx中启用缓存,则nginx将不会提供缓存内容。
如果重新启动nginx,任何情况下都会丢弃任何缓存的内容。
<强>结论:强> 从浏览器本身开始,请求周期中的缓存发生在许多级别。由于事实表明缓存不是由Nginx进行的,因此您需要从浏览器开始查看其他可能的缓存位置。