跳转到内容

重定向

HTTPS redirect 中间件会把 HTTP 请求重定向到 HTTPS。例如,http://labstack.com 会重定向到 https://labstack.com

e := echo.New()
e.Pre(middleware.HTTPSRedirect())

HTTPS WWW redirect 会把 HTTP 请求重定向到 www HTTPS。例如,http://labstack.com 会重定向到 https://www.labstack.com

e := echo.New()
e.Pre(middleware.HTTPSWWWRedirect())

HTTPS NonWWW redirect 会把 HTTP 请求重定向到 non-www HTTPS。例如, http://www.labstack.com 会重定向到 https://labstack.com

e := echo.New()
e.Pre(middleware.HTTPSNonWWWRedirect())

WWW redirect 会把 non-www 请求重定向到 www。例如,http://labstack.com 会重定向到 http://www.labstack.com

e := echo.New()
e.Pre(middleware.WWWRedirect())

NonWWW redirect 会把 www 请求重定向到 non-www。例如,http://www.labstack.com 会重定向到 http://labstack.com

e := echo.New()
e.Pre(middleware.NonWWWRedirect())
e := echo.New()
e.Use(middleware.HTTPSRedirectWithConfig(middleware.RedirectConfig{
Code: http.StatusTemporaryRedirect,
}))

上面的示例会以状态码 307 - StatusTemporaryRedirect 将 HTTP 请求重定向到 HTTPS。

type RedirectConfig struct {
// Skipper defines a function to skip middleware.
Skipper Skipper
// Status code to be used when redirecting the request.
// Optional. Default value http.StatusMovedPermanently.
Code int
}
// Effective defaults applied when fields are left unset.
RedirectConfig{
Skipper: DefaultSkipper,
Code: http.StatusMovedPermanently,
}