You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何配置Google Domain实现mydomain.com/admin访问Heroku上的Node.js应用

解决mydomain.com/admin指向Heroku Node.js应用的配置方案

首先得明确核心问题:你的主域名mydomain.com已经绑定到WebFlow托管服务,DNS解析指向WebFlow的服务器,所以不能直接把主域名绑定到Heroku(这会覆盖WebFlow的解析,导致主站跳转到Heroku应用)。要实现mydomain.com/admin访问Heroku应用,需要通过路径路由或反向代理来实现,下面是几种可行的方案:

方案一:用Cloudflare做反向代理(最灵活的方案)

这个方案不需要改动WebFlow或Heroku的核心配置,通过Cloudflare的页面规则实现路径转发:

  1. 切换DNS服务器到Cloudflare:在Google Domains中,把域名的DNS服务器替换为Cloudflare提供的服务器地址(Cloudflare注册后会给出)。
  2. 保留WebFlow的解析:在Cloudflare的DNS面板中,添加主域名mydomain.com的A/CNAME记录,指向WebFlow的官方解析地址(和你之前在Google Domains设置的一致)。
  3. 创建路径转发规则:
    • 进入Cloudflare的「页面规则」面板,点击「创建页面规则」
    • 匹配规则填:mydomain.com/admin*
    • 选择「设置为」→「转发URL」,转发类型选「临时重定向(302)」或者「永久重定向(301)」(如果是永久功能选301)
    • 目标URL填你的Heroku应用地址,比如https://yourapp.herokuapp.com/$1($1会匹配/admin后面的所有路径,比如/admin/dashboard会转发到yourapp.herokuapp.com/dashboard)
    • 额外开启「缓存级别:忽略缓存」,避免动态的Node.js应用内容被Cloudflare缓存

方案二:子域名+WebFlow路径重定向(无需切换DNS)

如果你不想换DNS服务器,可以用子域名绑定Heroku,再通过WebFlow把/admin路径重定向到子域名:

  1. 绑定Heroku子域名:
    • 登录Heroku控制台,进入你的Node.js应用,在「Settings」→「Domains」中添加子域名admin.mydomain.com
    • 复制Heroku给出的目标域名(类似yourapp.herokuapp.com或者Heroku的自定义域名目标)
    • 在Google Domains的DNS设置中,添加一条CNAME记录:主机名填admin,指向刚才复制的Heroku目标域名
  2. WebFlow设置路径重定向:
    • 打开WebFlow项目的「设置」→「路由」面板
    • 添加自定义路由:源路径填/admin,目标填https://admin.mydomain.com,重定向类型选301或302
    • 保存并发布WebFlow项目

为什么你之前的尝试没成功?

  • 直接绑定mydomain.com到Heroku:这会让DNS解析优先指向Heroku,覆盖WebFlow的设置,所以主站会跳转到Heroku应用根页面,WebFlow网站自然无法访问。
  • 子域名设置失败:大概率是DNS记录没配置正确(比如CNAME记录指向错误),或者Heroku的域名绑定没完成域名所有权验证(部分场景需要添加TXT记录验证)。

注意事项

  • 如果用Cloudflare反向代理,确保你的Node.js应用信任Cloudflare的IP地址,避免出现IP限制或安全验证问题。
  • 测试前记得清除浏览器缓存,或者用隐私窗口访问,避免旧的DNS缓存影响测试结果。

内容的提问来源于stack exchange,提问作者user2573690

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.13 08:11:49