diff --git a/pkg/configutils/domain.go b/pkg/configutils/domain.go index 737cab2..f026203 100644 --- a/pkg/configutils/domain.go +++ b/pkg/configutils/domain.go @@ -64,7 +64,7 @@ func MatchDomain(pattern string, domain string) (isMatched bool) { var portIndex = strings.LastIndex(patternPiece, ":*") if portIndex >= 0 { var prefix = patternPiece[:portIndex] - if strings.HasPrefix(domainPieces[index], prefix+":") { + if strings.HasPrefix(domainPieces[index], prefix+":") || domainPieces[index] == prefix { continue } } diff --git a/pkg/configutils/domain_test.go b/pkg/configutils/domain_test.go index 28ac60c..d34b77d 100644 --- a/pkg/configutils/domain_test.go +++ b/pkg/configutils/domain_test.go @@ -94,6 +94,14 @@ func TestMatchDomain(t *testing.T) { var ok = MatchDomains([]string{"*.example.com:8001"}, "a.example.com:8001") a.IsTrue(ok) } + { + var ok = MatchDomains([]string{"a.example.com:*"}, "a.example.com:8001") + a.IsTrue(ok) + } + { + var ok = MatchDomains([]string{"a.example.com:*"}, "a.example.com") + a.IsTrue(ok) + } { var ok = MatchDomains([]string{"*.example.com:*"}, "a.example.com:8001") a.IsTrue(ok)