我有一台服务器,子文件夹中有多个网站,我想为它们指定自己的域名。我使用 VirtualHost 设置了两个子域名,如下所示:
<VirtualHost *:80>
DocumentRoot "/var/www/ex1"
ServerName ex1.domain.com
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/var/www/ex2"
ServerName ex2.domain.com
</VirtualHost>
它们在我的 DNS 中被设置为 A 记录,并且它们工作正常访问ex1.domain.com和ex2.domain.com时,主域www.domain.com也能正常工作。
但是,当我将其主域名 www.example1.com 设置为重定向到 ex1.domain.com 的 CNAME 记录时,访问 www.example1.com 时会显示 www.domain.com,而不是应有的 ex1.domain.com。
我究竟做错了什么?
答案1
服务器别名指令应该可以解决问题:
<VirtualHost *:80>
DocumentRoot "/var/www/ex1"
ServerName ex1.domain.com
ServerAlias www.example1.com
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/var/www/ex2"
ServerName ex2.domain.com
ServerAlias www.example2.com
</VirtualHost>