linux – NGINX没有获取Vagrant Synced文件夹中的更改

我有一个由Vagrant设置的Ubuntu VirtualBox.它运行NGINX来提供一些静态文件和一个Django应用程序.

我将源文件夹通过vagrant同步到我的主机(windows)中的repo.我可以在Windows中更改Javascript文件,并验证是否通过SSH进入VM中的文件并以nano打开文件.

但是,当我远程进行更改时,NGINX似乎提供了未更改的版本,最后添加了“非法”字符(这真的吓坏了浏览器).当我进入vm时,我在CURL localhost时得到相同的文件.编辑当我通过SSH编辑文件时,它实际上做了同样的事情

我可以通过vagrant(重新同步文件夹)重新加载vm,它可以正常工作,直到下一次远程更改.

重启nginx和gunicorn并没有帮助.

vagrant是否锁定文件以便nginx必须依赖缓存?这可能会发生什么?

谢谢!

显然我的同事比我有更好的Google-foo.

这显然是virtualbox和nginx的一个已知问题,与nginx的sendfile有关.你可以简单地添加“sendfile off;”在您的服务器或nginx配置中的位置块.这是关于它的博文:nginx virtualbox static files

转载注明原文:linux – NGINX没有获取Vagrant Synced文件夹中的更改 - 代码日志