Apache2
Apache httpd:別名由虛擬主機繼承?
當預設伺服器包含
Alias /bla /srv/www/blub
那麼所有的 VirtualHosts 也可以訪問
/bla
。我必須說我沒有預料到這一點。IMO 虛擬伺服器應該有自己單獨的配置。
這是一個錯誤還是一個功能?我可以關閉此行為嗎?
設置不限於特定的 VirtualHost,而是放置在主伺服器配置文件中(即,
httpd.conf
或在配置片段中載入Include
和/或IncludeOptional
指令)對整個伺服器有效,包括任何和所有 VirtualHost。**範圍:**放置在主配置文件中的指令適用於整個伺服器。如果您只想更改伺服器的一部分的配置,您可以通過將指令放在 、 和 部分中來確定指令
<Directory>
的<DirectoryMatch>, <Files>, <FilesMatch>, <Location>
範圍<LocationMatch>
。這些部分限制了它們包含在特定文件系統位置或 URL 中的指令的應用。它們也可以嵌套,允許非常細粒度的配置。httpd 能夠同時為許多不同的網站提供服務。這稱為虛擬主機。指令也可以通過將它們放置在
<VirtualHost>
部分中來限定範圍,以便它們僅適用於特定網站的請求。不要在主 httpd.conf 中放置您不想應用於所有虛擬主機的指令。