当前位置: > 虚拟化 Virtualization > VirtualBox >

Virtualbox中nginx配置Sendfile

时间:2016-11-24 14:06来源:linux.it.net.cn 作者:IT

情景:本机win7,运行环境在virtualbox中,通过mount主机的文件夹来工作,修改过的文件不生效了!各种重启服务后,还是没作用。一会又不生效。

本来以为是nginx中缓存设置的问题,使尽各种解数,包括把expires设置为off,header中加Expire为0,给文件加时间戳,依然如此。果断google之,原来是virtualbox使用的特殊文件系统造成的。

apache和nginx中都有个默认开启的选项sendfile,表示通过内核文件指针来读取或复制文件,在vboxsf(virtualbox共享文件所使用的文件系统)中,sendfile会造成文件无法更新。于是我们无论怎么刷新,都只能看到第一次访问得到的文件了。

解决办法也很简单,将nginx.conf中设置sendfile off就可以了。

(责任编辑:IT)
------分隔线----------------------------