停止为 ngrok 付费!🛑 认识 NPort:免费开源替代方案

发布: (2026年1月16日 GMT+8 14:31)
4 min read
原文: Dev.to

Source: Dev.to

问题 😫

我们都有过这种经历。你正在向客户演示一个 Next.js 应用,或在本地测试 Stripe webhook。你启动 ngrok,发送链接,结果两小时后…… 会话过期

更糟的是,你重启服务器后,域名会从 random-xyz.ngrok-free.app 变成 random-abc.ngrok-free.app。你必须再次更新 webhook 设置。

要想获得稳定的自定义子域,通常需要付费。

NPort 是什么? 🚀

NPort 是一个 Node.js CLI 工具,用于将本地主机暴露到互联网。

100 % 免费开源,旨在成为付费隧道服务的 “设置一次,忘记它” 替代方案。

关键特性

  • 💸 100 % 免费: 无月费。
  • 🔗 免费自定义子域名: 免费声明 my-project.nport.link——不再有随机字符串。
  • 快速: 基于 Cloudflare Tunnel(Argo),利用其全球边缘网络。
  • 🔒 安全: 自动 HTTPS。
  • 🛠 可自行托管: Fork 代码仓库并在几分钟内将后端部署到您自己的 Cloudflare Workers 账户(免费层)。

NPort Home Page

演示 🎥

一个快速演示展示了获取实时 HTTPS 链接的速度。

对比

功能NPortngrok (Free Tier)
价格免费免费(受限)
自定义子域名✅ 包含❌ 付费功能
会话时长无限⚠️ 有限制
需要登录❌ 否✅ 是
开源✅ 是(MIT)❌ 否

使用方法 💻

需要先安装 Node.js。

1. 通过 NPM 安装

npm install -g nport

2. 启动本地服务器

在本地端口(例如 3000)运行你的 Next.js、Express 或其他应用。

3. 创建隧道

nport 3000 -s nickpham

( -s 标志表示子域名。)

NPort Terminal Startup

4. 完成! 🎉

你的应用现在可以通过 https://nickpham.nport.link 访问。终端会显示会话的简洁摘要,连接会瞬间建立。

工作原理 ⚙️

客户端: CLI(Node.js)使用 Cloudflare Tunnel 协议创建安全隧道。
边缘: 流量通过 Cloudflare 最近的边缘节点路由。
后端: 使用 Cloudflare Workers(无服务器)实现路由和子域逻辑,确保高可用性和低延迟。

在 Cloudflare Workers 上运行使基础设施成本几乎为零,从而保持服务免费。

隐私与自行托管 🛡️

隐私很重要。虽然 NPort 通过 Cloudflare 实现端到端加密,你仍然可以 fork 代码仓库并在自己的 Cloudflare 账户上部署后端。

  • 拥有私有隧道服务器。
  • 使用您自己的域名(例如 tunnel.your-company.com)。
  • 请参阅仓库中的 server/README.md 获取部署说明。

试一试!

GitHub 仓库:
网站:

如果你觉得它有用,请在 GitHub 上给它一个 Star ⭐——这有助于让更多开发者发现该工具。

编码愉快! 👩‍💻👨‍💻

Back to Blog

相关文章

阅读更多 »

开源开发者作品集

一个干净、可投入生产的 Next.js 作品集开源项目,可作为构建您自己的开发者站点时的参考。概览 如果您正在构建开发者…