docker和Mac OS X之间共享文件时Apache上的问题

docker和Mac OS X之间共享文件时Apache上的问题,apache,docker,Apache,Docker,我在Mac OS X上使用的是Docker 1.10.1版El Captain。我用CentOS 6发行版创建了一个Docker,并安装了PHP和Apache。我使用这个docker来开发我的PHP代码 当我启动Docker时,我使用参数“-v”来共享目录。它工作得很好。Apache和PHP工作起来很有魅力 但是。。正如我所说,我使用这个docker来开发一些代码。。。所以文件总是在变化。出于某种奇怪的原因,Apache有时无法识别它 例如。。。假设我使用某个IDE来编辑文件“index.htm

我在Mac OS X上使用的是Docker 1.10.1版
El Captain
。我用CentOS 6发行版创建了一个Docker,并安装了PHP和Apache。我使用这个docker来开发我的PHP代码

当我启动Docker时,我使用参数“-v”来共享目录。它工作得很好。Apache和PHP工作起来很有魅力

但是。。正如我所说,我使用这个docker来开发一些代码。。。所以文件总是在变化。出于某种奇怪的原因,Apache有时无法识别它

例如。。。假设我使用某个IDE来编辑文件“index.html”,更改被保存,并且我在docker中确认了这一点。但是Apache没有意识到这一变化(即使我重新启动Apache或docker!)。。。但是,如果我进入docker,打开并用“vi”保存文件,apache会识别出之前所做的更改

我查了docker和mac os之间的日期,结果都差不多

我认为这在Apache中可能是一个缓存问题,但我在virtualhost中添加了以下规则,但没有成功:

<filesMatch "\.(html|htm|js|css)$">
  FileETag None
  <ifModule mod_headers.c>
     Header unset ETag
     Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
     Header set Pragma "no-cache"
     Header set Expires "Wed, 11 Jan 1984 05:00:00 GMT"
  </ifModule>
</filesMatch>

FileTag无
标题未设置ETag
标题集缓存控制“最大年龄=0,无缓存,无存储,必须重新验证”
标题集Pragma“无缓存”
标题集过期“1984年1月11日星期三05:00:00 GMT”

你知道怎么解决吗?以前有人遇到过这个问题吗

操作系统X上的Docker使用VirtualBox,而VirtualBox与sendfile不兼容。您可以在以下位置禁用sendfile:


为什么这没有记录在任何地方??我调试了几个小时,没有发现这一点。另外,我使用的是Windows7。
EnableSendfile Off