[英]Apache ignore missing DocumentRoot
我想配置我的 apache 不同。 現在,如果缺少一個 DocumentRoots,所有服務器都無法啟動。 真煩人..
有什么選擇,如何忽略這個錯誤?
基於您的 DocumentRoot 指令與 VirtualHost 同義使用的假設,您可以將 VirtualHosts 配置分離到單獨的 conf 文件中,將它們分別放入其文檔根目錄中,然后將它們與目錄范圍的 include 指令一起包含在通用的服務器范圍 conf 中。 請參閱下面的示例:
在下面的目錄中創建一個conf:
/etc/apache/sites-enabled/sites.conf
添加以下內容
Include /data/www/sites/
這將包括上述目錄和任何子目錄中的任何 conf 文件
對於具有以下 DocumentRoot 的主機
/data/www/sites/website-one
創建一個 VirtualHost conf 文件並將其放在上面的目錄中,例如:
/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
目錄和子目錄中任何錯誤的 conf 文件都會導致服務器無法啟動。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.