centos绑定多个域名

正在使用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.54.xxx访问也是指向domai1目录,配置文件其他地方没动过。我想要通过IP访问就指向html目录,通过域名访问就指向对应的目录。

阅读 10.9k
3 个回答

通过查看官方文档已经找到答案:
# Ensure that Apache listens on port 80
Listen 80

# Listen for virtual host requests on all IP addresses
NameVirtualHost *:80

<VirtualHost *:80>
DocumentRoot /www/example1
ServerName www.example.com

# Other directives here

</VirtualHost>

<VirtualHost *:80>
DocumentRoot /www/example2
ServerName www.example.org

# Other directives here

</VirtualHost>

必须开启NameVirtualHost *:80,否则无论绑定多少个域名,全部都会指向第一个virtualhost的documentroot

修改配置过后你重启apache了么?
还有确定你的vhost mod开启了么?


DocumentRoot /var/www/html/domain1
ServerName domain.com
ServerAlias *.domain.com


DocumentRoot /var/www/html/domain2
ServerName domain.com
ServerAlias *.domain.com

这里没改掉了?

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏