【发布时间】:2014-02-01 11:03:30
【问题描述】:
我在 www.domain.com 上有主站点,并创建了一个名为 demo.domain.com 的子域 但是当我尝试访问子域 demo.domain.com 时,它显示的站点与我的主域相同,我该如何解决这个问题? 这是我在
中定义虚拟主机的方式/etc/httpd/conf/httpd.conf
<VirtualHost *:80>
ServerAdmin webmaster@domain.com
DocumentRoot /var/www/domain.com/public_html
ServerName domain.com
ServerAlias www.domain.com
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@domain.com
DocumentRoot /var/www/demo.domain.com/public_html
ServerName demo.domain.com
ServerAlias www.demo.domain.com
</VirtualHost>
我什至尝试过
service httpd restart
它抛出
Starting httpd: httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
[Mon Jan 13 15:54:14 2014] [warn] _default_ VirtualHost overlap on port 80, the first has precedence
我已经在主机文件中添加了主域和子域
[root@public_html]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
1.2.3.4 domain.com demo.domain.com
我在我的 DNS 管理器中为子域名创建了一条 A 记录,将其指向我的主 vps IP - 地址。 我的 DNS 文件
demo IN A 1.2.3.4
@ IN A 1.2.3.4
www IN A 1.2.3.4
所以当我访问 domain.com 和 demo.domain.com 时,它会显示与 domain.com 相同的页面
我在
中创建了一个index.html/var/www/demo.domain.com/public_html
[root@public_html]# cat index.html
<html>
<head>
<title>www.example.com</title>
</head>
<body>
<h1>Success: You Have Set Up a Virtual Host</h1>
</body>
</html>
那么我该如何解决这个问题?我正在使用 centOS 6, 64 位
当我尝试访问子域 demo.domain.com 时,它显示的站点与我的主域 www.domain.com 相同
【问题讨论】:
-
你的 httpd.conf 中有
NameVirtualHost *:80吗?没有这个,你将点击默认的 VirtualHost。 -
是的,我的 httpd.conf 中有 #NameVirtualHost *:80 但它被注释掉了。
-
我刚刚将其注释掉,然后重新启动了 apache 和瞧,它可以工作.... +1
标签: apache subdomain document-root