From 073c10df771e971d83bd84ac734f88d05c0a5c0b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=BE=84=E6=BD=AD?= Date: Thu, 25 Jan 2024 10:20:49 +0800 Subject: [PATCH] optimize rewrite regex (#801) --- pkg/ingress/kube/annotations/annotations.go | 2 +- pkg/ingress/kube/annotations/annotations_test.go | 9 +++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) 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{