システムの復元後、Apache構成ファイルで遊んでいたときに、あまりにも多くのことを実際に経験したことがないことに気づきました。デフォルトの/etc/Apache2/sites-available/default
の最初の行は次のとおりです。
DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
Webサーバーのルートは通常/var/www
であるため、ここに<Directory />
を追加する必要があるのはなぜですか?
構成のどこかでDirectory
の外側にDocumentRoot
を定義している可能性があります(たとえば、静的ページをDocumentRoot
の下に保存していますが、WebアプリケーションはDocumentRoot
の外側の別のディレクトリにあります)。構成に<Directory />
を含めることにより、独自の<Directory>
-スタンザで指定されていないeveryディレクトリに有効な適切なデフォルトを定義します。