web-dev-qa-db-ja.com

ルートディレクトリ/ var / www / html:Ubuntu 14.04上のApache2

私は、Apache2/mysqlサーバーを設定して遊んでみました。しかし、私は以前見たものとは異なる何かを見つけました。ルートディレクトリは/ var/www/html /を指しています。 /etc/Apache2/Apache2.confファイルを確認し、

<Directory /var/www/>
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>

これは、ルートディレクトリが/ var/www /を指していることを示しています。これはバグですか?また、なぜ彼らが/ var/www /ではなく/ var/www/htmlを作ったのかを知りたいのです。

2
Peco

通常、デフォルトの構成(例:/var/www/html)は/etc/Apache2/sites-enabledで定義されており、Apache2.confの内容を上書きしています。これは正常な動作であり、vhost設定を/etc/Apache2/sites-availableの個別のファイルとして追加し、有効なファイルを/etc/Apache2/sites-enabledにシンボリックリンクするのが一般的です。

デフォルトの設定を編集する場合は、/etc/Apache2/sites-available/000-default.confを編集します。

6
thexacre

Directoryディレクティブはルートを定義しません。むしろ、それが提供されている場合、Apacheがそのディレクトリ内のファイルをどのように処理するかを定義します。ルート外のファイルも、Aliasを介してアクセスされた場合に提供されます。

Apache設定がすべての/var/wwwのオプションを設定する理由は、それぞれが独自のDocumentRootを持つ複数のサイトを簡単に持つことができるようなものである可能性があります。そうすれば、各サイトでDirectoryを繰り返す必要がなくなります。

1
kasperd