问题描述
正在使用aliyun主机,运行centos6.4 64位系统,安装lamp环境后进行域名绑定。配置文件如下:
<VirtualHost *:80>DocumentRoot /var/www/htmlServerName 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.54.xxx访问也是指向domai1目录,配置文件其他地方没动过。我想要通过IP访问就指向html目录,通过域名访问就指向对应的目录。
问题解答
回答1:通过查看官方文档已经找到答案: # Ensure that Apache listens on port 80 Listen 80
# Listen for virtual host requests on all IP addressesNameVirtualHost *:80<VirtualHost *:80>DocumentRoot /www/example1ServerName www.example.com# Other directives here</VirtualHost><VirtualHost *:80>DocumentRoot /www/example2ServerName www.example.org# Other directives here</VirtualHost>
必须开启NameVirtualHost *:80,否则无论绑定多少个域名,全部都会指向第一个virtualhost的documentroot
回答2:修改配置过后你重启apache了么?还有确定你的vhost mod开启了么?
回答3:DocumentRoot /var/www/html/domain1 ServerName domain.com ServerAlias *.domain.com
DocumentRoot /var/www/html/domain2 ServerName domain.com ServerAlias *.domain.com
这里没改掉了?

