部署Firebase React基础应用后显示“站点未找到”的常见原因?
部署目录配置错误:Firebase默认部署
public目录内容,但React编译产物默认在build目录。如果没在firebase.json的hosting项里把public设为"build",部署的就是错误目录,自然找不到站点。检查配置文件确认public路径指向正确的编译目录。未生成编译产物:部署前没执行
npm run build生成生产环境文件,或者编译出错没察觉。终端显示部署正常只是Firebase上传了指定目录的内容,但目录里没有正确的index.html和静态资源,访问必然失败。部署前一定要确认build(或对应目录)下有完整的编译文件。站点域名未生效或关联错误:刚部署完可能有DNS缓存或CDN同步延迟,导致域名还没指向站点。试试清除浏览器缓存、用无痕模式访问,或者等10-15分钟再试。如果用了自定义域名,检查Firebase控制台里是否完成了域名绑定和验证步骤。
缺失单页应用重写规则:React是单页应用,需要配置重写规则让所有路由指向
index.html,否则除根路径外的其他路径会返回404。如果根路径也报错,大概率是前面的问题,但还是要检查firebase.json的hosting里是否有以下配置:"rewrites": [ { "source": "**", "destination": "/index.html" } ]选错Firebase项目:部署时可能误选了其他项目,导致部署到了没有配置Hosting的项目里。用
firebase use命令确认当前关联的项目是否正确,或者去Firebase控制台对应项目的Hosting页面查看部署记录。网络或地区限制:部分地区可能无法访问Firebase默认域名,或者本地防火墙、浏览器插件(比如广告拦截器)屏蔽了站点。可以切换网络环境(比如手机热点),或者关闭插件后再尝试访问。
内容的提问来源于stack exchange,提问作者DiamonC

