奇怪的错误与CentOS 7上的Apache

我正在尝试使用vagrant,virtualbox和CentOS 7 64bit构build虚拟机。 主机操作系统是Ubuntu 14.04 64bit。 Vagrant是1.9.2,VirtualBox 5.1.6。

这是stream浪文件

Vagrant.configure("2") do |config| config.vm.box = "centos/7" config.vm.box_check_update = false # Enable cache if plugin is installed # To install it execute: vagrant plugin install vagrant-cachier # cache will be located in [thisvagrantdir]/.vagrant/machines/default/cache if Vagrant.has_plugin?("vagrant-cachier") config.cache.auto_detect = true config.cache.scope = :machine end config.vm.network "private_network", ip: "192.168.33.101" config.hostmanager.enabled = true config.hostmanager.manage_host = true config.hostmanager.aliases = %w(centos7.dev) config.ssh.forward_agent = true config.vm.synced_folder ".", "/vagrant", type: "nfs" config.vm.provider "virtualbox" do |vb| vb.customize ["modifyvm", :id, "--memory", "2048" ] vb.customize ["modifyvm", :id, "--name" , "centos7"] end config.vm.provision "shell" do |s| s.privileged = true s.path = "provisioner.sh" end end 

现在在provisioner.sh中,我安装PHP,一些扩展,并为位于/etc/httpd/conf.d/site.conf中的apache添加一个configuration文件。 这里是site.conf:

 <VirtualHost _default_:80> ServerAdmin [email protected] DocumentRoot /vagrant/www/moodle ServerName centos7.dev ErrorLog /vagrant/log/error.log CustomLog /vagrant/log/requests.log combined <IfModule dir_module> DirectoryIndex index.php index.html </IfModule> <Directory /vagrant/www/moodle> Options All AllowOverride All Require all granted </Directory> <Location /> LogLevel warn </Location> </VirtualHost> 

/ vagrant / www / moodle是来自主机系统的NFS连接目录。

毕竟这是完成了Apache只是拒绝启动。 我可以运行sudo systemctl启动httpd.service 100次,没有任何反应。 但是,如果我与sudo httpd运行它,它的作品???!

这是我所获得的地位

 [vagrant@default ~]$ sudo systemctl status httpd.service ● httpd.service - The Apache HTTP Server Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled) Active: failed (Result: exit-code) since mar 2017-05-09 11:29:09 UTC; 8s ago Docs: man:httpd(8) man:apachectl(8) Process: 7149 ExecStop=/bin/kill -WINCH ${MAINPID} (code=exited, status=1/FAILURE) Process: 7148 ExecStart=/usr/sbin/httpd $OPTIONS -DFOREGROUND (code=exited, status=1/FAILURE) Main PID: 7148 (code=exited, status=1/FAILURE) may 09 11:29:09 default systemd[1]: Starting The Apache HTTP Server... may 09 11:29:09 default systemd[1]: httpd.service: main process exited, code=exited, status=1/FAILURE may 09 11:29:09 default kill[7149]: kill: cannot find process "" may 09 11:29:09 default systemd[1]: httpd.service: control process exited, code=exited status=1 may 09 11:29:09 default systemd[1]: Failed to start The Apache HTTP Server. may 09 11:29:09 default systemd[1]: Unit httpd.service entered failed state. may 09 11:29:09 default systemd[1]: httpd.service failed. 

任何想法,我在做什么错在这里? 谢谢

增加了error_log的内容

  (13)Permission denied: AH00091: httpd: could not open error log file /vagrant/log/error.log. AH00015: Unable to open logs (13)Permission denied: AH00091: httpd: could not open error log file /vagrant/log/error.log. AH00015: Unable to open logs [Tue May 09 02:00:13.473097 2017] [core:notice] [pid 24635] SELinux policy enabled; httpd running as context unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 [Tue May 09 02:00:13.475731 2017] [suexec:notice] [pid 24635] AH01232: suEXEC mechanism enabled (wrapper: /usr/sbin/suexec) [Tue May 09 02:00:13.504866 2017] [auth_digest:notice] [pid 24636] AH01757: generating secret for digest authentication ... [Tue May 09 02:00:13.507336 2017] [lbmethod_heartbeat:notice] [pid 24636] AH02282: No slotmem from mod_heartmonitor [Tue May 09 02:00:13.536814 2017] [mpm_prefork:notice] [pid 24636] AH00163: Apache/2.4.6 (CentOS) PHP/5.4.16 configured -- resuming normal operations [Tue May 09 02:00:13.536867 2017] [core:notice] [pid 24636] AH00094: Command line: 'httpd' [Tue May 09 02:05:20.671219 2017] [mpm_prefork:notice] [pid 24636] AH00169: caught SIGTERM, shutting down (13)Permission denied: AH00091: httpd: could not open error log file /vagrant/log/error.log. AH00015: Unable to open logs [Tue May 09 02:07:52.571217 2017] [core:notice] [pid 6154] SELinux policy enabled; httpd running as context unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 [Tue May 09 02:07:52.573223 2017] [suexec:notice] [pid 6154] AH01232: suEXEC mechanism enabled (wrapper: /usr/sbin/suexec) [Tue May 09 02:07:52.599432 2017] [auth_digest:notice] [pid 6155] AH01757: generating secret for digest authentication ... [Tue May 09 02:07:52.601028 2017] [lbmethod_heartbeat:notice] [pid 6155] AH02282: No slotmem from mod_heartmonitor [Tue May 09 02:07:52.671389 2017] [mpm_prefork:notice] [pid 6155] AH00163: Apache/2.4.6 (CentOS) PHP/5.4.16 configured -- resuming normal operations [Tue May 09 02:07:52.671423 2017] [core:notice] [pid 6155] AH00094: Command line: 'httpd' [Tue May 09 02:20:28.697078 2017] [mpm_prefork:notice] [pid 6155] AH00169: caught SIGTERM, shutting down (13)Permission denied: AH00091: httpd: could not open error log file /vagrant/log/error.log. AH00015: Unable to open logs (13)Permission denied: AH00091: httpd: could not open error log file /vagrant/log/error.log. AH00015: Unable to open logs [Tue May 09 11:14:29.277789 2017] [core:notice] [pid 7361] SELinux policy enabled; httpd running as context unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 [Tue May 09 11:14:29.285279 2017] [suexec:notice] [pid 7361] AH01232: suEXEC mechanism enabled (wrapper: /usr/sbin/suexec) [Tue May 09 11:14:29.307699 2017] [auth_digest:notice] [pid 7362] AH01757: generating secret for digest authentication ... [Tue May 09 11:14:29.309339 2017] [lbmethod_heartbeat:notice] [pid 7362] AH02282: No slotmem from mod_heartmonitor [Tue May 09 11:14:29.448865 2017] [mpm_prefork:notice] [pid 7362] AH00163: Apache/2.4.6 (CentOS) PHP/5.4.16 configured -- resuming normal operations [Tue May 09 11:14:29.448913 2017] [core:notice] [pid 7362] AH00094: Command line: 'httpd' [Tue May 09 11:19:24.274215 2017] [mpm_prefork:notice] [pid 7362] AH00169: caught SIGTERM, shutting down (13)Permission denied: AH00091: httpd: could not open error log file /vagrant/log/error.log. AH00015: Unable to open logs (13)Permission denied: AH00091: httpd: could not open error log file /vagrant/log/error.log. AH00015: Unable to open logs (13)Permission denied: AH00091: httpd: could not open error log file /vagrant/log/error.log. AH00015: Unable to open logs (13)Permission denied: AH00091: httpd: could not open error log file /vagrant/log/error.log. AH00015: Unable to open logs (13)Permission denied: AH00091: httpd: could not open error log file /vagrant/log/error.log. AH00015: Unable to open logs [Tue May 09 11:32:03.917301 2017] [core:notice] [pid 7210] SELinux policy enabled; httpd running as context unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 [Tue May 09 11:32:03.919728 2017] [suexec:notice] [pid 7210] AH01232: suEXEC mechanism enabled (wrapper: /usr/sbin/suexec) [Tue May 09 11:32:03.944005 2017] [auth_digest:notice] [pid 7211] AH01757: generating secret for digest authentication ... [Tue May 09 11:32:03.945572 2017] [lbmethod_heartbeat:notice] [pid 7211] AH02282: No slotmem from mod_heartmonitor [Tue May 09 11:32:04.013106 2017] [mpm_prefork:notice] [pid 7211] AH00163: Apache/2.4.6 (CentOS) PHP/5.4.16 configured -- resuming normal operations [Tue May 09 11:32:04.013158 2017] [core:notice] [pid 7211] AH00094: Command line: 'httpd' 

正如用户ezra-s已经提到的,SELinux是罪魁祸首。 一旦我执行

 sudo setenforce 0 sudo systemctl start httpd.service 

一切开始工作。 我将永久禁用SELinux,因为这是纯粹的testing虚拟机。

谢谢大家。