在我的Vagrant环境中,我有一个运行默认设置的LAMP的Ubuntu Virtualbox客户机。
我将源代码与Vagrantfile放在同一文件夹中。因此,在Ubuntu客户机上,我可以像这样访问挂载的/vagrant
目录中的文件。
/vagrant
/mysite
/index.php
/Vagrantfile
现在,在我的Apache配置文件中,我添加了一行代码。
Alias /mysite /vagrant/mysite
重新加载配置并重新启动Apache后,我可以访问 localhost:8558/mysite/index.php
并且它可以正常工作。
问题在于,当我使用vagrant reload
重新加载Virtualbox时,它会在挂载/vagrant
文件夹之前启动Apache服务。所以Apache找不到别名目录,无法启动。我必须手动启动它。
我的问题是 - 是否有一种延迟启动Apache的方法,使其在挂载后启动?
更新: 作为解决方法,我在crontab中添加了一个脚本,在启动30秒后启动Apache,如此处所述。但我想知道是否有更好的解决方案。
vagrant-mounted
事件,但这最终是唯一的解决方案。 - Austin Prayvagrant-mounted
,但就是无法让它正常工作。现在我用这个解决方案已经很顺利了,效果相当不错。 - Zauberfischconfig.vm.provision "shell", inline: "systemctl restart httpd", run: "always"
对我有效。 - SpongeBobPHPants