Skip to content
Server Plugin

HttpsRedirect

所需依赖项: io.ktor:ktor-server-http-redirect

代码示例: ssl-engine-main-redirect

原生服务器
Ktor 支持 Kotlin/Native,并允许你在没有额外运行时或虚拟机的情况下运行服务器。
支持: ✅

HttpsRedirect 插件会在处理调用之前,将所有 HTTP 请求重定向到其 HTTPS 对应项。默认情况下,资源返回 301 Moved Permanently,但可以配置为 302 Found

添加依赖项

要使用 HttpsRedirect,你需要将 ktor-server-http-redirect artifact 包含到构建脚本中:

Kotlin
Groovy
XML

安装 HttpsRedirect

要将 HttpsRedirect 插件安装到应用程序, 请在指定的

模块
模块允许你通过对路由进行分组来组织应用程序。
中将其传递给 install 函数。 下面的代码片段展示了如何安装 HttpsRedirect ...

  • ...在 embeddedServer 函数调用内部。
  • ...在显式定义的 module 中,它是一个 Application 类的扩展函数。
kotlin
kotlin

上述代码安装了 HttpsRedirect 插件并使用默认配置。

当位于反向代理之后时,你需要安装 ForwardedHeaderXForwardedHeader 插件以正确检测 HTTPS 请求。如果你在安装这些插件之一后遇到无限重定向,请查阅此常见问题解答条目以获取更多详细信息。

配置 HttpsRedirect

下面的代码片段展示了如何配置所需的 HTTPS 端口,并为请求的资源返回 301 Moved Permanently

kotlin
install(HttpsRedirect) {
    sslPort = 8443
    permanentRedirect = true
}

你可以在这里找到完整的示例:ssl-engine-main-redirect