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

Firebase Hosting迁Cloud Run后,持续收到/__/hosting/verification/请求的解决咨询

解决Firebase Hosting删除后持续发送/__/hosting/verification/请求的问题

排查步骤

  • 彻底检查Firebase资源清理情况
    登录Firebase控制台,确认Hosting站点已完全删除,域名管理中无mydomain.com的关联记录;同时检查本地或部署环境的firebase.json,确保已移除所有Hosting相关配置,避免残留部署触发验证逻辑。
  • 核查Google域名验证记录
    进入Google Cloud控制台的「API和服务」→「域名验证」页面,查看mydomain.com是否仍关联Firebase项目,若存在则移除该验证记录。
  • 验证Cloudflare规则有效性
    检查之前的防火墙规则是否精准:需同时匹配请求路径包含/__/hosting/verification/、User Agent包含Google-Firebase,且动作设置为「拦截」或「返回自定义响应」,避免因规则范围过宽/过窄导致漏拦截。

拦截与解决方法

  • 配置精准Cloudflare防火墙规则
    创建规则时设置条件:
    (http.request.uri contains "/__/hosting/verification/") and (http.user_agent contains "Google-Firebase")
    
    动作选择「拦截」或「返回444状态码」(直接断开连接,终止重定向循环)。
  • 在Next.js服务端添加路由拦截
    根据使用的路由方案添加处理:
    • App Router:在app/__/hosting/verification/route.js中编写:
      export async function GET() {
        return new Response(null, { status: 444 });
      }
      
    • Pages Router:在pages/__/hosting/verification.js中编写:
      export default function VerificationPage() {
        return null;
      }
      export async function getServerSideProps(context) {
        context.res.statusCode = 444;
        return { props: {} };
      }
      
    返回444状态码可直接终止请求循环,避免容器被无效请求持续唤醒。
  • 提交Google官方工单
    若上述方法无效,说明可能是Firebase后台残留的验证任务,提交工单时提供:域名、Firebase项目ID、请求日志截图(含User Agent和路径信息),请求官方清理相关任务。
  • 优化Cloud Run闲置超时
    在Cloud Run控制台设置「闲置超时」为1分钟(最短允许值),减少无效请求导致的容器持续活跃费用。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 22:52:41