🥥Ngrok 使用教程

type
status
date
slug
summary
tags
category
icon
password

一、简介

Ngrok 是一款功能强大的内网穿透工具,可以将本地服务暴露到互联网上,支持 HTTP、HTTPS 和 TCP 协议。它广泛应用于开发调试、远程访问本地服务等场景。

二、安装

  1. 下载 访问Ngrok 官方网站,找到适合你操作系统的版本并下载。
  • Mac/Linux 用户:
  • 下载地址:
  • 选择适合你系统的版本(如 ngrok-stable-darwin-amd64.zip)。
  • Windows 用户:
  • 下载地址:
  • 选择适合你系统的版本(如 ngrok-stable-windows-amd64.zip)。
  1. 解压 将下载的文件解压到一个合适的目录。
  • Mac/Linux 用户:
  • Windows 用户:
  • 右键点击下载的文件,选择"解压到...",将文件解压到一个目录(如 C:\\ngrok)。
  1. 验证安装 打开终端或命令提示符,运行以下命令验证是否安装成功:
如果返回了版本信息,说明安装成功。

三、基本使用

  1. 暴露 HTTP 服务 假设你有一个运行在本地 8080 端口的 Web 服务,你可以通过以下命令将其暴露到互联网上:
运行后,Ngrok 会生成一个随机的 HTTPS 隧道地址(如 https://<random-subdomain>.ngrok.io),你可以通过这个地址访问本地 8080 端口的服务。
  1. 暴露 TCP 服务 如果你需要暴露一个 TCP 服务(如本地的 MySQL 数据库),可以使用以下命令:
这会生成一个 TCP 隧道地址(如 tcp://<random-subdomain>.ngrok.io:12345),你可以通过这个地址访问本地 3306 端口的 MySQL 数据库。
  1. 自定义子域名 如果你需要使用自定义的子域名,可以通过以下命令:
这会生成一个自定义的 HTTPS 隧道地址(如 https://your-subdomain.ngrok.io)。

四、高级功能

  1. 配置文件 Ngrok 支持通过配置文件(ngrok.yml)来管理隧道配置。创建一个 ngrok.yml 文件,内容如下:
  • authtoken:你的 Ngrok 认证令牌(在Ngrok 官网获取)。
  • tunnels:定义隧道配置。
运行以下命令启动隧道:
  1. 自动更新 Ngrok 支持自动更新功能。运行以下命令:
这会自动检查并更新到最新版本。
  1. 日志功能 Ngrok 支持日志功能,可以将日志输出到文件。运行以下命令:
这会将日志输出到 ngrok.log 文件中。

五、使用场景

  1. 远程调试 如果你在本地开发一个 Web 应用,需要让远程的同事或测试人员访问,可以通过 Ngrok 将本地服务暴露到互联网上。
  1. 内网穿透 如果你需要访问内网的设备或服务(如本地的 MySQL 数据库),可以通过 Ngrok 创建一个隧道。
  1. 演示和测试 在开发过程中,你可能需要将本地服务暴露给客户或合作伙伴进行演示和测试。Ngrok 可以快速实现这一需求。

六、注意事项

  1. 安全性
  • 免费版:免费版的 Ngrok 隧道地址是随机生成的,不适合生产环境。
  • 付费版:付费版支持自定义域名、更高级的安全功能和更高的性能。
  1. 认证令牌 如果你需要使用高级功能(如自定义子域名、持久化隧道等),需要在Ngrok 官网获取认证令牌,并在配置文件中设置。
  1. 网络限制
  • 如果你的网络环境有防火墙或代理服务器,可能需要配置额外的参数。
  • 在某些网络环境下,Ngrok 可能无法正常工作。

七、总结

Ngrok 是一款非常实用的内网穿透工具,可以帮助你快速将本地服务暴露到互联网上。无论是开发调试、远程访问还是演示测试,Ngrok 都能提供强大的支持。希望本教程能帮助你更好地使用 Ngrok。

参考资料
AI 实践探索Redis主从、哨兵、集群模式详解
Loading...
目录