Apache httpd: エイリアスは仮想ホストに継承されますか?

Apache httpd: エイリアスは仮想ホストに継承されますか?

デフォルトサーバーに

Alias /bla /srv/www/blub

そうすれば、すべての VirtualHosts もアクセスできるようになります/bla

私はそれを予期していなかったと言わざるを得ません。私の意見では、仮想サーバーは独自の個別の構成を持つべきです。

これはバグですか、それとも機能ですか? この動作をオフにすることはできますか?

答え1

設定は特定のVirtualHostに限定されず、メインのサーバー構成ファイル(つまりhttpd.conf または、Includeおよび/またはIncludeOptionalディレクティブはサーバー全体に対して有効であり、すべての VirtualHost が含まれます。

それは設計によるものです:

範囲:メイン構成ファイルに配置されたディレクティブは、サーバー全体に適用されます。サーバーの一部の構成のみを変更する場合は、ディレクティブを 、 、 セクションに配置することで、ディレクティブのスコープを設定できます<Directory><DirectoryMatch>, <Files>, <FilesMatch>, <Location>これら<LocationMatch>のセクションは、特定のファイルシステムの場所または URL に、囲まれたディレクティブの適用を制限します。また、ネストすることもでき、非常にきめ細かい構成が可能になります。

httpd には、同時に多数の異なる Web サイトを提供する機能があります。これは仮想ホスティングと呼ばれます。ディレクティブは、<VirtualHost>セクション内に配置することでスコープを限定し、特定の Web サイトへのリクエストにのみ適用することもできます。

すべての VirtualHost に適用したくないディレクティブをメインの httpd.conf に配置しないでください。

関連情報