Redirect (重定向) 中间件

HTTPS 重定向

HTTPS 重定向中间件将 http 请求重定向到 https。例如,http://laily.net 将被重定向到 https://laily.net。

用法

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

HTTPS WWW 重定向

HTTPS WWW 重定向将 http 请求重定向到带 www 的 https 请求。例如,http://laily.net 将被重定向到 https://www.laily.net。

用法

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

HTTPS NonWWW 重定向

HTTPS NonWWW 将 http 请求重定向到不带 www 的 https 请求。例如,http://www.laily.net 将被重定向到 https://laily.net。

用法

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

WWW 重定向

WWW 重定向将不带 www 的请求重定向到带 www 的请求。

例如,http://laily.net 重定向到 http://www.laily.net

用法

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

NonWWW 重定向

NonWWW 重定向将带 www 的请求重定向到不带 www 的请求。

例如,http://www.laily.net 重定向到 http://laily.net

用法

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

自定义配置

用法

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

上面的示例将 HTTP 的请求重定向到 HTTPS,使用 307 - StatusTemporaryRedirect 状态码跳转。

配置

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 `json:"code"`
}

默认配置

DefaultRedirectConfig = RedirectConfig{
  Skipper: defaultSkipper,
  Code:    http.StatusMovedPermanently,
}