当前位置:  开发笔记 > 编程语言 > 正文

在Vagrant重新加载后,Apache无法启动

如何解决《在Vagrant重新加载后,Apache无法启动》经验,为你挑选了1个好方法。

我正试图用Vagrant建立一个简单的开发环境.基础盒(我创建的)具有带Apache和MySQL的CentOS 6.5 64位.

问题是,重新加载VM(vagrant reloadvagrant halt然后up)后,httpd服务不会在启动时启动.

只有当我运行一个改变的配置脚本DocumentRoot并且仅在我第一次停止机器之后才会出现问题.

更多信息:

httpd在chkconfig2级,3级,4级和5级上

没有写入error_log(on /etc/httpd/logs)的错误.

如果我ssh到机器并手动启动服务,它开始没有问题.

我和其他CentOS盒子有同样的问题(就像chef/centos-6.5vagrantcloud.com上提供的那样),这就是我自己创建一个盒子的原因.

其他服务,如mysql,启动正常,所以这是apache特有的问题.

恢复:

httpd总是在第一次启动时启动,即使使用配置脚本(如在vagrant destroy之后)

httpd总是在我不运行配置脚本时启动(但我需要它来设置DocumentRoot)

httpd在第一次暂停后没有启动,配置脚本与DocumentRoot混淆(不确定是否存在问题).


这是我的Vagrantfile:

# -*- mode: ruby -*-
# vi: set ft=ruby :

VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|

  config.vm.box = "centos64_lamp"
  config.vm.box_url = "/centos64_lamp.box"
  config.vm.hostname = "machine.dev"
  config.vm.network "forwarded_port", guest: 80, host: 8080
  config.vm.synced_folder ".", "/vagrant", owner: "root", group: "root"
  config.vm.provision :shell, :path => "vagrant_files/bootstrap.sh"

end

我试图创建与所有者/组无业游民文件夹rootapache.两者都有同样的问题(与所有者一样vagrant).

这些是我试过的配置脚本(bootstrap.sh).我希望他们做的唯一事情是将DocumentRoot更改为vagrant文​​件夹.都没有奏效.

试试1

#!/usr/bin/env bash

sudo rm -rf /var/www/html
sudo ln -fs /vagrant/app/webroot /var/www/html

试试2

#!/usr/bin/env bash

sudo cp /vagrant/vagrant_files/httpd.conf /etc/httpd/conf
sudo service httpd restart

第二次尝试的httpd.conf等于默认值,但DocumentRoot路径除外.第二种选择允许我vagrant up --provision强制重新启动服务,但这应该是一个不必要的步骤.

我还能尝试解决这个问题吗?谢谢.



1> Zé Cipriano..:

显然问题是由于Apache尝试启动时没有安装vagrant文​​件夹.虽然我仍然不明白为什么没有抛出错误.

我通过创建一个Upstart脚本(在文件夹上/etc/init)来解决它,以便在vagrant安装其文件夹后启动服务(它发出一个名为的事件vagrant-mounted)

这是我使用的脚本(使用文件名,httpd.conf但我不认为这是必要的).

# start apache on vagrant mounted

start on vagrant-mounted

exec sudo service httpd start

Upstart可以做更多,但这解决了它.

推荐阅读
可爱的天使keven_464
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有