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防火墙规则
创建规则时设置条件:
动作选择「拦截」或「返回444状态码」(直接断开连接,终止重定向循环)。(http.request.uri contains "/__/hosting/verification/") and (http.user_agent contains "Google-Firebase") - 在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: {} }; }
- App Router:在
- 提交Google官方工单
若上述方法无效,说明可能是Firebase后台残留的验证任务,提交工单时提供:域名、Firebase项目ID、请求日志截图(含User Agent和路径信息),请求官方清理相关任务。 - 优化Cloud Run闲置超时
在Cloud Run控制台设置「闲置超时」为1分钟(最短允许值),减少无效请求导致的容器持续活跃费用。
内容的提问来源于stack exchange,提问作者cpix
相关产品推荐
相关产品推荐

