匹配除1个正则表达式外的所有主机

时间:2018-11-02 17:43:56

标签: docker docker-swarm traefik

在使用正则表达式时遇到了麻烦,非常感谢您的帮助!

Traefik + docker-swarm。目标是拥有一个特定的故障回复服务,该服务应接收主域不多的任何请求。

我尝试过的:

let boothVisits = event.attendants.employers.map(e => e.boothVisits.map(arr => arr)); boothVisits = boothVisits.map(arr => arr.map(id => id));

traefik.frontend.rule=HostRegexp:{all:^((?!mydomain.com).)*$$}

traefik.frontend.rule=HostRegexp:all:^((?!mydomain.com).)*$$

这应将所有请求与除traefik.frontend.rule=HostRegexp:^((?!mydomain.com).)*$$之外的任何主机匹配,但不起作用,我是否丢失了某些内容?

2 个答案:

答案 0 :(得分:0)

试一试:

/^[^.]+/

答案 1 :(得分:0)

我对您所使用的任何技术都不熟悉,但这在Regex101上有效:

^(.+\.mydomain\.com)$

或者您想要的东西恰恰相反,它在Regex101上看起来像这样:

^((?!\.mydomain\.com).)*$

请注意,此最后一个正则表达式不适用于golang风格的正则表达式。是否奏效取决于正则表达式的风格,则您所使用的技术适用。

您可以使用Regex101尝试不同的口味。