面向开发者

几秒钟,让你的 localhost 拥有 HTTPS 地址。

本地运行的应用无法从外部访问:Webhook 送不到,客户看不到演示,手机上的应用连不上 localhost。Zorven 只需一条命令,就能把你的 localhost 发布到 HTTPS 地址;你可以在面板中查看每个传入请求,并一键重放。

示例场景

四个真实场景,四个简短答案

每个场景的前两步都相同:安装客户端,并用 zorven authtoken <token> 把它关联到你的账号。

调试 Webhook

Stripe 或 GitHub 的 Webhook 始终无法到达你的本地服务器。

  1. 运行 zorven 3000 发布你的本地服务器
  2. 把生成的 HTTPS 地址粘贴到 Webhook 设置中
  3. 在面板中查看请求,修复问题后重放同一个请求

客户演示与 PR 预览

你想展示可运行的版本,但不想部署。

  1. 运行 zorven ephemeral 3000
  2. 分享该地址
  3. 时间一到,隧道会自动删除,不留任何痕迹

CI 与自动化

脚本需要读取测试环境的地址。

  1. zorven 3000 --print-url --no-auto-update 会以机器可读的一行输出地址
  2. 通过服务账号和 API 令牌在代码中管理隧道(Pro 及以上)

发布你的 Docker 应用

你想在自己的服务器上运行应用,并通过 Zorven 发布。

  1. 在设备上用 zorven --enable-deploy 启用应用运行,并通过 ZORVEN_API_TOKEN 提供你的 API 令牌
  2. 用 zorven deploy init 创建 zorven.yaml 模板,并填写镜像和端口
  3. 用 zorven deploy --wait 发布;你将获得 HTTPS 地址、零停机更新和回滚
你的工作流

从开发机到共享地址,路径更短

从免代码策略到 CI/CD 令牌,开发时所需的一切都在同一个面板中。

一条命令获得 HTTPS

只需 zorven http 3000。支持 WebSocket、HTTP/2 和 SSE,可立即分享该地址。

请求检查器与重放

在面板中查看每个传入请求的请求头和请求体。一键重放已捕获的请求,并用重放对比(replay diff)比较响应,非常适合调试 Webhook。

临时隧道

zorven ephemeral 3000 到期后自动删除。演示和 PR 预览结束后不留任何残留。

基于路径的路由

把 /api 转发到一个隧道,把 / 转发到另一个。还可通过流量策略添加或移除请求头,或进行重定向。

免代码策略引擎

在面板中定义 rate limit、deny、redirect、set_header、require_mTLS、WAF 以及 Webhook 签名校验规则。策略引擎适用于 Pro 及以上套餐。

WAF 与 Webhook 签名校验

WAF 使用 OWASP-lite 规则,以 403 拦截 SQL 注入、XSS、路径遍历、命令注入和扫描器 User-Agent,你还可以添加自定义正则(扫描路径、查询参数、User-Agent、Referer 和 Cookie,不扫描请求体)。verify_webhook 可校验 GitHub、Stripe、GitLab、Shopify 和 Slack 的签名(容差 5 分钟);密钥来自 Secret Vault。适用于 Pro 及以上套餐。

SDK 与 CI

通过 Node 和 Python SDK 在代码中开启隧道。在 CI 中,zorven 3000 --print-url --no-auto-update 会以机器可读的一行输出地址。

REST API 与 OpenAPI 3.1

API 令牌支持作用域、有效期和轮换管理。服务账号让 CI/CD 可以管理隧道和资源。API 访问适用于 Pro 及以上套餐。

TCP、SNI、UDP 与 mTLS

原始 TCP 可用于数据库和 SSH,另有 SNI 模式和 UDP 隧道。需要强制客户端证书时可启用 mTLS。

指标、告警与开放核心

错误率超过阈值时会收到邮件告警;日志导出适用于 Team 及以上套餐。核心采用 AGPLv3:可阅读代码,并在自己的服务器上运行。

品牌化的访客登录页

访问受保护 HTTP 隧道的访客会看到 Zorven 风格的页面,而不是浏览器的密码弹窗或单调的 403:可使用用户名和密码表单,或通过 Google / GitHub 继续(仅限该隧道允许的提供方,支持允许邮箱列表和切换账号)。会话有效期为 12 小时,修改密码会使会话失效,每个 IP 每 10 分钟最多允许 10 次失败尝试。curl 和 API 客户端仍可通过 Authorization: Basic 请求头通过验证。支持土耳其语和英语,浅色与深色主题,适配移动端。

访问事件与统计 API

每次登录尝试都会被记录:方式、提供方、身份、是否成功、原因、IP 和 User-Agent(绝不记录密码)。记录按你所在套餐的日志保留期保存。GET /api/v1/tunnels/{id}/access-events 返回列表,/access-events/summary?window=24h|7d|30d 返回汇总(需要 analytics:read 作用域)。仪表板中的隧道页面也会显示同样的统计。

TCP/UDP 的 Web 门

原始 TCP/UDP 隧道(含 SNI)会获得形如 door--<label>.zorven.app 的门地址。访客登录后,其 IP 会在隧道端口上被放行 1 小时、12 小时、24 小时或 7 天;没有授权的连接会被静默丢弃。用 PUT /api/v1/tunnels/{id}/door 启用,用 GET .../door/grants 列出授权,用 DELETE .../door/grants/{grantId} 撤销。适用于 Pro 及以上套餐。

真实命令

从终端到上线

只需注册一次令牌,即可开启任意端口。演示用临时隧道,更新只要一条命令。

只需注册一次令牌

$ zorven authtoken <token>

发布本地 3000 端口

$ zorven http 3000
你的 HTTPS 地址已上线;传入请求会显示在面板的请求检查器中

到期后自动删除的隧道

$ zorven ephemeral 3000
启动时会输出 "Temporary tunnel: it will be removed automatically after 2h0m0s.";非常适合演示和 PR 预览,无需清理

用于 CI:以机器可读方式输出地址,并关闭自动更新

$ zorven 3000 --print-url --no-auto-update

查看客户端版本

$ zorven version

更新客户端

$ zorven update

请求检查器位于面板(panel.zorven.app)中。所有命令请参阅文档。

哪个套餐适合你?

免费试用,自动化选 Pro

从 Free 开始,使用隧道和请求检查器。Pro 增加 API、策略引擎和 Secret Vault;Team 增加日志导出。

Free

$0
  • 2 个客户端,2 条隧道
  • 免费的 name--slug.zorven.app 地址
  • 每月 5 GB 流量
  • 日志保留 1 天

Team

$29/ 月
  • 日志导出与高级负载均衡
  • 50 条隧道,50 个自定义域名
  • 每月 250 GB,日志 30 天
  • 5 名成员,50 个项目

完整对比表请参阅价格页面。

常见问题

开发者常见问题

运行 zorven http 3000,即可把本地服务发布到一个 HTTPS 地址,再把该地址填给 Webhook 服务方。你可以在面板中查看每个请求的请求头和请求体,并一键重放已捕获的请求。
用 zorven ephemeral 3000 开启的隧道会在到期后自动删除,适合客户演示或拉取请求预览这类短期分享。
有。我们提供完整的 REST API,并附带 OpenAPI 3.1 定义。API 令牌可按作用域和有效期限制,并支持轮换;服务账号可接入 CI/CD。API 访问适用于 Pro 及以上套餐。
可以。通过策略引擎,你可以在面板中定义 rate limit、deny、redirect、set_header、require_mTLS、WAF 以及 Webhook 签名校验规则。策略引擎适用于 Pro 及以上套餐。
可以。Zorven 采用开放核心(AGPLv3)。你可以在自己的基础设施上运行服务端组件;代码位于 github.com/tkodcumpeg4/zorven。

更多解答请见完整常见问题。

立即开启你的第一条隧道

创建账号,获取令牌,输入 zorven http 3000。Free 套餐无需信用卡。