该域指向一个IP /服务器。 但是,如果服务器通过IP或通过域访问,我喜欢有不同的documentRoots。 所以我build立这个configuration:
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或域将导致相同的页面。 我做错了什么?
您的configuration有一个虚拟主机,其服务器名称为example.com,但其他虚拟主机没有服务器名称指令 。
可以说你的ip是10.0.0.1
您需要为您要响应的虚拟主机提供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>