服务器名称是否可以匹配域中间的通配符



我正在尝试设置一个具有两个VirtualHost记录的服务器,如下所示:

<VirtualHost *:80>
    ServerName sub.domain.com
    DocumentRoot /path/to/dir/
    SetEnv FLAG false
</VirtualHost>
<VirtualHost *:80>
    ServerName sub.*.domain.com
    DocumentRoot /path/to/dir/
    SetEnv FLAG true
</VirtualHost>

我希望域sub.domain.com通过第一个VirtualHost,而像sub.test.domain.com这样的域通过第二个。

目前,FLAG 环境变量始终设置为 false,这表明sub.test.domain.com与第二个不匹配,因此恢复到第一个。

我唯一能看到的问题就是第二个ServerName指令中的通配符位于域的中间。这是允许的还是其他问题?

您似乎无法在 ServerName 中使用通配符,请改用ServerAlias

最新更新