0

Apache を別の方法で構成したいと思います。現在、DocumentRoots の 1 つが欠落している場合、すべてのサーバーが起動に失敗します。うざい..

このエラーを無視する方法はありますか?

4

1 に答える 1

1

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 ファイルには、DocumentRoot などの VirtualHost に関するすべての情報が含まれます。

<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 ファイルが原因でサーバーが起動しないことを意味します。

于 2012-04-08T19:22:31.003 に答える