Vagrant同步文件夹中httpd DocumentRoot的问题

时间:2015-03-30 02:28:41

标签: apache vagrant

我在Windows 8.1计算机上设置了Vagrant LAMP开发环境。客户操作系统是Centos 7.我有一个名为workspace的主流浪汉文件夹的子文件夹,我已同步到我的访客上的/ var / www / workspace。我还将端口80转发给guest虚拟机,并使用/ var / www / workspace的DocumentRoot运行httpd。当文件夹为空时,我会获得标准的apache测试页面。到目前为止一切都很好。

我在SublimeText中的主机上的工作区文件夹中创建了一个index.html文件,其中包含以下内容。

<html>
Test1
</html>

我在我的主机上的网络浏览器中检查了这一点,并获得了预期的结果

Test1

我继续编辑index.html文件,添加head和body标签以及一些div:

<html>
<head>
<title>Test site</title>
<link rel="stylesheet" href="css/style.css" />
</head>
<body>

<div class="button"><a href="">Test1</a></div>
<div class="button"><a href="">Test2</a></div>

</body>
</html>

然后我更改链接中的文字并添加第三个div。

<html>
<head>
<title>Test site</title>
<link rel="stylesheet" href="css/style.css" />
</head>
<body>

<div class="button"><a href="">Blog</a></div>
<div class="button"><a href="">Resume</a></div>
<div class="button"><a href="">Experiments</a></div>

</body>
</html>

当我添加第三个div时,我的浏览器开始返回文件的先前版本,其中Test1和Test2作为链接文本。我确保我的浏览器缓存已被禁用。我检查了Chrome开发者控制台的“网络”部分,以确保该文件来自网络服务器。我在来宾机上检查vi,索引文件包含Blog,Resume,Experiments链接。如果我通过添加新行或任何内容来修改vi中的文件,则可以解决问题。如果我删除第三个div,它解决了问题。如果我删除css参考行,它将解决问题。我不知道这个旧版本在哪里或为什么在进行某些更改时返回它。我的假设是它是一个流浪的同步问题,但我对其他可能出错的想法持开放态度。

1 个答案:

答案 0 :(得分:0)

虽然不是理想的问题,但我找到了问题的答案。看来这是VirtualBox的一个问题,而不是Vagrant。有关此问题的更多信息,请访问:

Ticket 9069
Ticket 819

没有解决方案,但有一个建议的解决方法可以避免此问题。解决方法是将其添加到httpd.conf:

EnableSendfile off
EnableMMAP Off