过去,我在 Lighted 上有以下配置,它允许我将我拥有的一些二级域重定向到我的主域。
$HTTP["host"] =~ "superdomain\.net|superdomain\.eu" {
url.redirect = ( "^/(.*)" => "http://mything.com/" )
}
这很好用。如果有人尝试访问,superdomain.net
他将被重定向到,http://mything.com
同时保留完整的 URL 查询。
然而,今天我试图在规则上设置子域webmail.superdomain.net
和 Lighted 匹配webmail.superdomain.net
,并将用户重定向到http://mything.com
。
子域名的配置是:
$HTTP["host"] == "webmail.superdomain.net" {
var.domain = "webmail.superdomain.net"
include "/var/webconfig/config/template/domain-generic.conf"
}
我把这条规则放在另一条规则之前,但仍然没有成功。有没有办法可以更改第一条规则,使其仅匹配域而不匹配子域?
谢谢。
答案1
我刚刚找到了答案!我的重定向规则应该是:
$HTTP["host"] =~ "^superdomain\.net$|^superdomain\.eu$" {
url.redirect = ( "^/(.*)" => "http://mything.com/" )
}
^
在每个域名的开头和结尾处添加$
,以指定要匹配的字符串的开始和结束。这样就不会匹配子域名。