我正在将 Finatra 应用程序部署到 Heroku。感谢 Twitter 人员和 Heroku,这是一项非常容易的任务。问题是 Heorku 为您提供开箱即用的 https(如果我试图通过 https 访问我的服务,它就可以工作)。尽管如此,它也适用于 http 请求。有没有办法禁用http请求并只留下https?
谢谢
您可以通过将defaultHttpPort值覆盖为空字符串来禁用 http 请求(并且不要为 -http.port 标志传递值)
import com.twitter.finagle.Http
import com.twitter.finatra.http.HttpServer
import com.twitter.finatra.http.routing.HttpRouter
object ExampleHttpsServerMain extends ExampleHttpsServer
class ExampleHttpsServer
extends HttpServer
with Tls {
override val defaultHttpPort: String = "" // disable the default HTTP port
override val defaultHttpsPort: String = ":443"
override def configureHttp(router: HttpRouter): Unit = {
router
.add[ExampleController]
}
}