Apache子子域和现有的通配符子域

所以我有一个现有的通配符DNSlogging和子域虚拟服务器设置如下

DocumentRoot /path/to/code <Directory "/path/to/code"> allow from all Options +Indexes </Directory> ServerName existing.domain.co.uk ServerAlias *.domain.co.uk 

…我现在想添加另一个虚拟服务器,它以相同的方式工作,但有一个子子域,允许我从类似monkeys.alt.domain.co.uk访问代码库的一个分支

 DocumentRoot /path/to/altcode <Directory "/path/to/altcode"> allow from all Options +Indexes </Directory> ServerName alt.domain.co.uk ServerAlias *.alt.domain.co.uk 

在DNS区域文件中,我添加了另一个从* .alt到IP的logging(恰好与* Alogging相同的IP)。

现在我正在想的是,现有的通配符正在拾取monkeys.alt.domain.co.uk并将其发送到现有的虚拟服务器而不是新的虚拟服务器。

我的问题:我如何获得来自monkeys.alt.domain.co.uk的stream量转到新的'alt'虚拟服务器?

Apache以与读取configuration相同的顺序与虚拟主机协同工作。 所以,如果他先读取ServerAlias *.domain.co.uk .domain.co.uk,那么任何sub或sub.sub.domain将匹配。 如果Apache能够读取第一个ServerAlias *.alt.domain.co.uk那么ServerAlias *.alt.domain.co.uk任何子域名将会匹配,但不会与existing.domain.co.uk匹配,这将与下一个vHost匹配。

因此,如果同一文件中描述了两个虚拟主机,请将第二个(monkey.alt vHost)放在主vHost之前。 如果它们在单独的文件中,重命名该文件,以便首先读取monkey vHostconfiguration文件(例如,在开始处添加0)。