正在使用aliyun主机,运行centos6.4 64位系统,安装lamp环境后进行域名绑定。配置文件如下:
<VirtualHost *:80>
DocumentRoot /var/www/html
ServerName 120.24.54.xxx
</VirtualHost> <VirtualHost *:80>
DocumentRoot /var/www/html/domain1
ServerName domain.com
ServerAlias *.domain.com
</VirtualHost> <VirtualHost *:80>
DocumentRoot /var/www/html/domain2
ServerName domain.com
ServerAlias *.domain.com
</VirtualHost>
然后通过www.domain1.com可以访问指向/var/www/html/domain1目录的网站,但是通过www.domain1.com访问同样是指向/var/www/html/domain1,通过IP 120.24..xxx访问也是指向domai1目录,配置文件其他地方没动过。我想要通过IP访问就指向html目录,通过域名访问就指向对应的目录。
通过查看官方文档已经找到答案:
# Ensure that Apache listens on port 80
Listen 80
# Listen for virtual host requests on all IP addresses
NameVirtualHost *: <VirtualHost *:>
DocumentRoot /www/example1
ServerName www.example.com # Other directives here </VirtualHost> <VirtualHost *:>
DocumentRoot /www/example2
ServerName www.example.org # Other directives here </VirtualHost>
必须开启NameVirtualHost *:80
,否则无论绑定多少个域名,全部都会指向第一个virtualhost的documentroot