mirror of
https://github.com/caddyserver/caddy.git
synced 2024-12-23 22:27:38 -05:00
Allow rewrite status codes to be 2xx and 4xx.
This commit is contained in:
parent
c12847e5ba
commit
2ea6c95ac4
2 changed files with 23 additions and 2 deletions
|
@ -80,8 +80,8 @@ func rewriteParse(c *Controller) ([]rewrite.Rule, error) {
|
||||||
return nil, c.ArgErr()
|
return nil, c.ArgErr()
|
||||||
}
|
}
|
||||||
status, _ = strconv.Atoi(c.Val())
|
status, _ = strconv.Atoi(c.Val())
|
||||||
if status < 400 || status > 499 {
|
if status < 200 || (status > 299 && status < 400) || status > 499 {
|
||||||
return nil, c.Err("status must be 4xx")
|
return nil, c.Err("status must be 2xx or 4xx")
|
||||||
}
|
}
|
||||||
default:
|
default:
|
||||||
return nil, c.ArgErr()
|
return nil, c.ArgErr()
|
||||||
|
|
|
@ -137,6 +137,11 @@ func TestRewriteParse(t *testing.T) {
|
||||||
}`, false, []rewrite.Rule{
|
}`, false, []rewrite.Rule{
|
||||||
&rewrite.ComplexRule{Base: "/", To: "/to", Ifs: []rewrite.If{{A: "{path}", Operator: "is", B: "a"}}},
|
&rewrite.ComplexRule{Base: "/", To: "/to", Ifs: []rewrite.If{{A: "{path}", Operator: "is", B: "a"}}},
|
||||||
}},
|
}},
|
||||||
|
{`rewrite {
|
||||||
|
status 500
|
||||||
|
}`, true, []rewrite.Rule{
|
||||||
|
&rewrite.ComplexRule{},
|
||||||
|
}},
|
||||||
{`rewrite {
|
{`rewrite {
|
||||||
status 400
|
status 400
|
||||||
}`, false, []rewrite.Rule{
|
}`, false, []rewrite.Rule{
|
||||||
|
@ -153,6 +158,22 @@ func TestRewriteParse(t *testing.T) {
|
||||||
}`, true, []rewrite.Rule{
|
}`, true, []rewrite.Rule{
|
||||||
&rewrite.ComplexRule{},
|
&rewrite.ComplexRule{},
|
||||||
}},
|
}},
|
||||||
|
{`rewrite {
|
||||||
|
status 200
|
||||||
|
}`, false, []rewrite.Rule{
|
||||||
|
&rewrite.ComplexRule{Base: "/", Regexp: regexp.MustCompile(".*"), Status: 200},
|
||||||
|
}},
|
||||||
|
{`rewrite {
|
||||||
|
to /to
|
||||||
|
status 200
|
||||||
|
}`, false, []rewrite.Rule{
|
||||||
|
&rewrite.ComplexRule{Base: "/", To: "/to", Regexp: regexp.MustCompile(".*"), Status: 200},
|
||||||
|
}},
|
||||||
|
{`rewrite {
|
||||||
|
status 199
|
||||||
|
}`, true, []rewrite.Rule{
|
||||||
|
&rewrite.ComplexRule{},
|
||||||
|
}},
|
||||||
{`rewrite {
|
{`rewrite {
|
||||||
status 0
|
status 0
|
||||||
}`, true, []rewrite.Rule{
|
}`, true, []rewrite.Rule{
|
||||||
|
|
Loading…
Reference in a new issue