ngrok是一个流行的内网穿透工具,它可以将本地运行的服务器安全地暴露到公网。默认情况下,ngrok免费版每次启动都会随机分配一个临时域名(如https://1a2b3c4d.ngrok.io),这不利于长期对外提供服务。要实现固定域名访问,就需要进行域名绑定。

ngrok域名绑定主要分为两种方式:保留域名(Reserved Domain)和自定义域名(Custom Domain)。
## 一、保留域名(Reserved Domains)保留域名是指在ngrok官方域名下固定一个子域名(如https://myapp.ngrok.io),每次启动ngrok都使用同一个地址。该功能需要付费订阅(Personal及以上套餐)。
操作步骤:
1. 登录ngrok官网控制台,进入 Reserved Domains 页面。
2. 点击"Reserve Domain",输入你想要的子域名前缀并保存。
3. 启动ngrok时通过参数指定该域名:
ngrok http -hostname=myapp.ngrok.io 80
## 二、自定义域名(Custom Domains)自定义域名允许你使用自己的顶级域名或二级域名(如www.example.com)作为访问入口,该功能需要Pro或Enterprise套餐。
操作步骤:
1. 在ngrok控制台的 Custom Domains 中添加你的域名。
2. ngrok会生成一个 CNAME解析目标地址(形如 xxxxxxxx.ngrok.io)。
3. 登录你的域名DNS服务商,添加一条 CNAME记录,将目标域名指向ngrok提供的地址。
4. 等待DNS解析生效(通常数分钟至数小时),然后启动ngrok:
ngrok http -hostname=www.example.com 80
## 三、通过配置文件绑定域名除了命令行参数,更推荐使用 ngrok.yml配置文件(位于~/.ngrok2/ngrok.yml)来管理隧道,避免每次输入冗长命令:
tunnels:
myapp:
addr: 80
proto: http
hostname: www.example.com
配置完成后,使用 ngrok start myapp 即可启动绑定指定域名的隧道。
## 四、注意事项1. 免费账户无法使用固定域名功能,每次启动均为随机地址。
2. 使用自定义域名前,请确保DNS记录已正确配置且生效,否则ngrok会启动失败。
3. ngrok还支持为自定义域名配置TLS证书以启用HTTPS,证书可在控制台中上传管理。
4. 建议通过ngrok官方文档确认最新的套餐功能与操作细节。

查看详情

查看详情