diff --git a/pkg/ingress/kube/annotations/annotations.go b/pkg/ingress/kube/annotations/annotations.go index 3ce2c93e2..afaa96092 100644 --- a/pkg/ingress/kube/annotations/annotations.go +++ b/pkg/ingress/kube/annotations/annotations.go @@ -83,7 +83,7 @@ func (i *Ingress) NeedRegexMatch(path string) bool { if i.Rewrite == nil { return false } - if strings.ContainsAny(path, `\.+*?()|[]{}^$`) { + if i.Rewrite.RewriteTarget != "" && strings.ContainsAny(path, `\.+*?()|[]{}^$`) { return true } if strings.ContainsAny(i.Rewrite.RewriteTarget, `$\`) { diff --git a/pkg/ingress/kube/annotations/annotations_test.go b/pkg/ingress/kube/annotations/annotations_test.go index 993d4c441..bfad684d2 100644 --- a/pkg/ingress/kube/annotations/annotations_test.go +++ b/pkg/ingress/kube/annotations/annotations_test.go @@ -67,6 +67,15 @@ func TestNeedRegexMatch(t *testing.T) { inputPath: "/.*", expect: true, }, + { + input: &Ingress{ + Rewrite: &RewriteConfig{ + UseRegex: false, + }, + }, + inputPath: "/.", + expect: false, + }, { input: &Ingress{ Rewrite: &RewriteConfig{