Apache重启报警,不存在虚拟主机目录

Apache重启时报警:web

AH00112: Warning: DocumentRoot [/usr/local/apache/docs/dummy-host.example.com] does not existapache

AH00112: Warning: DocumentRoot [/usr/local/apache/docs/dummy-host2.example.com] does not existvim

问题缘由:spa

Apache在配置虚拟主机时会在配置文件中(httpd.conf)开启虚拟主机的配置文件;ast

将“ #Include /etc/httpd/extra/httpd-vhosts.conf ”前面的“#”去掉;配置

而“httpd-vhosts.conf ”中会有两个配置虚拟主机的例子:方法

<VirtualHost *:80>
   ServerAdmin webmaster@dummy-host.example.com
   DocumentRoot "/usr/local/apache/docs/dummy-host.example.com"
   ServerName dummy-host.example.com
   ServerAlias www.dummy-host.example.com
   ErrorLog "logs/dummy-host.example.com-error_log"
   CustomLog "logs/dummy-host.example.com-access_log" common
</VirtualHost>

<VirtualHost *:80>
   ServerAdmin webmaster@dummy-host2.example.com
   DocumentRoot "/usr/local/apache/docs/dummy-host2.example.com"
   ServerName dummy-host2.example.com
   ErrorLog "logs/dummy-host2.example.com-error_log"
   CustomLog "logs/dummy-host2.example.com-access_log" common
</VirtualHost>im

这样Apache在启动时就会去寻找以上两个不存在的文件夹,就会报错。error

解决方法:配置文件

方法一:新建出不存在的文件夹;

  #cd /usr/local/apache

  #mkdir -p docs/dummy-host2.example.com  #这里是新建文件夹

  #mkdir -p docs/dummy-host.example.com

方法二:将“httpd-vhosts.conf ”中的例子注释掉;

  #<VirtualHost *:80>
  #    ServerAdmin webmaster@dummy-host2.example.com
  #    DocumentRoot "/usr/local/apache/docs/dummy-host2.example.com"
  #    ServerName dummy-host2.example.com
  #   ErrorLog "logs/dummy-host2.example.com-error_log"
  #    CustomLog "logs/dummy-host2.example.com-access_log" common
  #</VirtualHost>

方法三:配置虚拟主机时,不开启虚拟主机的配置文件,本身新建配置文件;

#vim /etc/httpd/httpd.conf

  #Include /etc/httpd/extra/httpd-vhosts.conf

  Incloud /etc/httpd/extra/XXX.conf  #新建的配置文件必定要与“httpd-vhosts.conf”放在同一个文件夹内

  Incloud /etc/httpd/extra/XXX.conf  #文件名称能够本身定义

更改完成以后重启Apache便可。

相关文章
相关标签/搜索