redir
Issues an HTTP redirect to the client.
This directive implies that a matched request is to be rejected as-is, and the client should try again at a different URL. For that reason, its directive order is very early.
Syntax
redir [<matcher>] <to> [<code>]
-
<to> is the target location. Becomes the response's
Locationheader.
-
<code> is the HTTP status code to use for the redirect. Can be:
-
A positive integer in the
3xxrange, or401 -
temporaryfor a temporary redirect (302, this is the default) -
permanentfor a permanent redirect (301) -
htmlto use an HTML document to perform the redirect (useful for redirecting browsers but not API clients) -
A placeholder with a status code value
-
Examples
Redirect all requests to https://example.com:
www.example.com {
redir https://example.com
}
Same, but preserve the existing URI by appending the {uri} placeholder:
www.example.com {
redir https://example.com{uri}
}
Same, but permanent:
www.example.com {
redir https://example.com{uri} permanent
}
Redirect your old /about-us page to your new /about page:
example.com {
redir /about-us /about
reverse_proxy localhost:9000
}