NGINX没有在Vagrant同步文件夹中捕获更改

6
我有一个由Vagrant设置的Ubuntu VirtualBox。它正在运行NGINX来提供一些静态文件和Django应用程序。
我通过vagrant将源文件夹与我的主机(Windows)中的存储库同步。我可以在Windows中更改JavaScript文件并通过SSH登录并在nano中打开文件以验证更改是否已应用于虚拟机中的文件。
但是,当我远程进行更改时,NGINX似乎提供了未更改的版本,并添加了“非法”字符到末尾(这真的让浏览器感到震惊)。当我通过SSH连接到VM时,在CURL本地主机时我会得到相同的文件。编辑 当我通过SSH编辑文件时,它实际上也会发生相同的事情。
我可以通过vagrant重新加载vm(这会重新同步文件夹),并且在下一次远程更改之前它可以正常工作。
重启nginx和gunicorn没有帮助。
Vagrant是否锁定文件以便nginx必须依赖缓存?这里可能发生了什么?
谢谢!
1个回答

9

显然,我的同事的谷歌搜索技能比我高一筹。

这显然是虚拟机和Nginx之间已知的问题,与Nginx的sendfile有关。您可以在Nginx配置文件中的服务器或位置块中添加"sendfile off;"。这里有一篇博客文章:nginx virtualbox static files


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接