mirror of
https://github.com/caddyserver/caddy.git
synced 2024-12-23 22:27:38 -05:00
Merge pull request #359 from abiosoft/master
rewrite: Use middleware.Replacer for simple rule
This commit is contained in:
commit
b787569820
2 changed files with 7 additions and 1 deletions
|
@ -52,7 +52,11 @@ func (s SimpleRule) Rewrite(r *http.Request) bool {
|
|||
// take note of this rewrite for internal use by fastcgi
|
||||
// all we need is the URI, not full URL
|
||||
r.Header.Set(headerFieldName, r.URL.RequestURI())
|
||||
r.URL.Path = s.To
|
||||
|
||||
// replace variables
|
||||
to := path.Clean(middleware.NewReplacer(r, nil, "").Replace(s.To))
|
||||
|
||||
r.URL.Path = to
|
||||
return true
|
||||
}
|
||||
return false
|
||||
|
|
|
@ -17,6 +17,7 @@ func TestRewrite(t *testing.T) {
|
|||
Rules: []Rule{
|
||||
NewSimpleRule("/from", "/to"),
|
||||
NewSimpleRule("/a", "/b"),
|
||||
NewSimpleRule("/b", "/b{uri}"),
|
||||
},
|
||||
}
|
||||
|
||||
|
@ -50,6 +51,7 @@ func TestRewrite(t *testing.T) {
|
|||
}{
|
||||
{"/from", "/to"},
|
||||
{"/a", "/b"},
|
||||
{"/b", "/b/b"},
|
||||
{"/aa", "/aa"},
|
||||
{"/", "/"},
|
||||
{"/a?foo=bar", "/b?foo=bar"},
|
||||
|
|
Loading…
Reference in a new issue