Apache-2.2
域和 IP 應該有不同的 DocumentRoot
域指向一個 IP / 伺服器。但是如果伺服器是通過 IP 或域訪問的,我喜歡有不同的 documentRoots。因此我建構了這個配置:
NameVirtualHost *:80 <VirtualHost *:80> ServerAdmin foo@bar DocumentRoot /var/www/localhost <Directory /var/www/localhost> Options -Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory> </VirtualHost> <VirtualHost *:80> ServerAdmin foo@bar ServerName example.org ServerAlias example.org DocumentRoot /var/www/example.org <Directory /var/www/example.org> Options -Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory> </VirtualHost>
問題是訪問IP或域會導致相同的頁面。我做錯什麼了?
您的配置有一個伺服器名稱為 example.com 的虛擬主機,但是另一個虛擬主機沒有 servername 指令。
假設你的 ip 是 10.0.0.1
您需要為要響應該 ip 的虛擬主機提供 10.0.0.1 的伺服器名稱。
像這樣的東西:
<VirtualHost *:80> ServerAdmin foo@bar ServerName 10.0.0.1 DocumentRoot /var/www/localhost <Directory /var/www/localhost> Options -Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory> </VirtualHost>