我正在尝试这样做,当有人访问我的网站sub.example.com
时,它会将其发送到与访问example.com
的人不同的文件夹。很简单,是吗?这是我用来做的代码:
NameVirtualHost *:80
<VirtualHost *:80>
DocumentRoot "C:/xampp/htdocs/sub"
ServerName sub.example.com
ServerAlias sub.example.com
</VirtualHost>
我为域名设置了通配符的DNS,以便任何子域仍然指向我的服务器。
问题是,现在只要有人访问example.com
或sub.example.com
或任何子域,就会显示/htdocs/sub
我只希望在访问/htdocs/sub
时显示sub.example.com
,我该怎么做?
从我所看到的,我的执行似乎是正确的,但也许我错过了导致这种情况发生的一件事情?我重新安装xampp无济于事
我的主httpd.conf有这一行ServerName example.com:80
如果这有帮助
答案 0 :(得分:1)
我最终找到了一个解决方案,对于未来遇到同样问题的人来说,这就是我所做的:
NameVirtualHost *:80
<VirtualHost *:80>
ServerName www.example.com
ServerAlias example.com
DocumentRoot "C:/xampp/htdocs/"
</VirtualHost>
<VirtualHost *:80>
ServerName sub.example.com
DocumentRoot "C:/xampp/htdocs/sub"
</VirtualHost>
我假设基本上VirtualHost要区分sub.example.com
和example.com
,那么在配置任何子域之前,必须首先为example.com
定义VirtualHost