我想配置我的apache不同。现在,如果缺少其中一个DocumentRoots,则所有服务器都无法启动。那很烦人..
有没有选项,如何忽略此错误?
在Ubuntu上......
谢谢
答案 0 :(得分:1)
基于您的DocumentRoot指令与VirtualHost同步使用的假设,您可以将VirtualHosts配置分离到单独的conf文件中,将它们单独放入其文档根目录中,然后将它们包含在泛型中的目录范围包含指令中,服务器范围的conf。请参阅下面的示例:
在下面的目录中创建一个conf:
/etc/apache/sites-enabled/sites.conf
添加以下内容
Include /data/www/sites/
这将包括上述目录中的任何conf文件和任何子目录
对于具有以下DocumentRoot的主机
/data/www/sites/website-one
创建一个VirtualHost配置文件并将其放在上面的目录中,例如:
/data/www/sites/website-one/website-one.conf
您的conf文件将包含有关VirtualHost的所有信息,包括DocumentRoot,例如
<VirtualHost *:80>
DocumentRoot /data/www/sites/website-one
ServerName www.website-one.com
# Other directives here
</VirtualHost>
如果DocumentRoot不存在,则不会加载conf文件,并且永远不会执行DocumentRoot指令。出于安全考虑,请注意您的conf文件不会被解除引用。这应该在服务器级别禁用,但需要注意。最后,上述模式意味着/data/www/sites
目录和子目录中的任何错误配置文件都将导致服务器无法启动。