企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持知识库和私有化部署方案 广告
# 带 TLS 的自动公共地址 在更加 "真实的环境" (例如公共,远程地址而不是本地主机)中测试Web应用程序服务器是否很棒? 有很多提供这种功能的第三方工具,但是我认为[ngrok](https://github.com/inconshreveable/ngrok)是其中最好的一种。它像Iris一样受欢迎并经过多年的测试。 iris 提供 ngrok 的集成。此功能简单但功能强大。当你想在远程会议上向同事或项目负责人快速展示开发进度时,这确实很有帮助。 请按照以下步骤临时将你的本地 Iris Web 服务器转换为公共服务器。 继续 [下载 ngrok](https://ngrok.io/),将其添加到$ PATH环境变量中, 简单的传递 `WithTunneling` 配置到你的 `app.Run` 方法中, 你就已经准备好 [开始](https://www.facebook.com/iris.framework/photos/a.2420499271295384/3261189020559734/?type=3&theater) 了! ![带 TLS 的自动公有域](https://cdn.learnku.com/uploads/images/202002/03/16294/akbqE3cvqD.png!large) * `ctx.Application().ConfigurationReadOnly().GetVHost()` 方法返回公共域值。虽然很少用,但是功能还是在的。 大多数情况下,你使用相对网址路径而不是绝对网址(或者必须使用). * ngrok 是否已在运行都无关紧要, Iris 框架聪明到可以使用 ngrok 的 [web API](https://ngrok.com/docs) 去创建一个隧道。 完整的 `Tunneling` 配置: ``` app.Run(iris.Addr(":8080"), iris.WithConfiguration( iris.Configuration{ Tunneling: iris.TunnelingConfiguration{ AuthToken: "my-ngrok-auth-client-token", Bin: "/bin/path/for/ngrok", Region: "eu", WebInterface: "127.0.0.1:4040", Tunnels: []iris.Tunnel{ { Name: "MyApp", Addr: ":8080", }, }, }, })) ``` 阅读有关 [配置](https://github.com/kataras/iris/wiki/Configuration)的更多信息。