ngrok 是什么?
Ngrok 是一个网络工具,主要用于在网络中创建从公共互联网到私有或本地网络中运行的web服务的安全隧道。它充当了一个反向代理,允许外部用户通过公共可访问的URL访问位于防火墙或私有网络中的web应用程序或服务。Ngrok 特别适用于开发者在本地开发环境中的应用调试,因为它可以让开发者在无需实际部署到生产环境的情况下,就能让其他人通过互联网访问他们的应用。
以下是 Ngrok 的一些关键特点:
-
内网穿透:Ngrok 能够在本地运行的服务和公共互联网之间建立一个安全的通道,即使本地服务位于一个私有网络中。
-
动态域名:Ngrok 提供了一个动态域名系统,即使你的本地IP地址或端口改变,外部用户也可以继续使用相同的URL访问你的服务。
-
流量捕获和分析:Ngrok 可以记录和分析通过隧道的所有HTTP/HTTPS流量,这对于调试和监控非常有用。
-
多种协议支持:除了HTTP和HTTPS之外,Ngrok 还支持其他协议的隧道,如TCP、UDP等。
-
授权和安全:Ngrok 允许你通过API和管理界面来控制谁可以访问你的隧道,以及如何保护你的服务。
-
版本和许可证:Ngrok 有两个主要版本,1.x 和 2.x。2.x 版本是当前的版本,它提供了更多的功能和改进,但其源代码不是开源的。
-
商业和免费版本:Ngrok 提供免费计划和付费计划,免费计划对于基本的开发和测试需求通常是足够的,而付费计划则提供更高级的功能和更高的使用限制。
总之,Ngrok 是一个非常有用的工具,尤其在开发过程中需要进行远程调试和演示时,它可以让你轻松地将本地服务暴露给互联网,而无需复杂的网络配置。
ngrok 官网:Download
ngrok 怎么使用?
1、通过brew安装 ngrok
brew install ngrok/ngrok/ngrok
2、配置authtoken
ngrok config add-authtoken <token>
需要登录ngrok 网站获取,https://dashboard.ngrok.com/get-started/setup/macos
3、然后将本地访问地址映射到外网,例如将本地的http://localhost:8080 映射到外网
ngrok http http://localhost:8080
执行结果: