reactjs Firebase默认托管域:只有. firebaseapp.com可以运行,但. web.app失败

n7taea2i  于 2022-11-29  发布在  React
关注(0)|答案(3)|浏览(114)

我正在使用typescript构建一个非常简单的单页react应用程序。我尝试使用Firebase Hosting托管它。令人惊讶的是,只有域名 *[name]. firebaseapp.com * 可以工作,但 *[name]. web.app * 显示“Site not found”默认页面:
site-not-found image
我使用的是基本的firebase配置(默认配置是使用firebase init获得的):

{
  "hosting": {
    "public": "build",
    "ignore": [
      "firebase.json",
      "**/.*",
      "**/node_modules/**"
    ]
  }
}

当我访问 *[name]. www.example.com * 时,我得到“Site not found”web.app(未找到站点)。我本以为index.html、重写、构建文件夹等有问题...但为什么我会看到 *[name]. www.example.com * 上的页面firebaseapp.com功能正常,并且托管良好?
有几件事我很怀疑:

  • 域名不能从firebase本身获得(尽管为什么firebase将域名命名为无效的名称,如果在创建项目时是这样的话)
  • 文件仅被推送到 *[name]. firebaseapp.com * 域(在这种情况下,您如何控制这种情况?)
dphi5xsq

dphi5xsq1#

更新日期:

我给FireBase的客户支持发了邮件,第二天域名就正常工作了。没有提供为什么会出现这个问题的解释,但是给他们发邮件解决了这个问题。

w6lpcovy

w6lpcovy2#

这对我来说解决了它:
硬刷新CTRL + F5或关闭浏览器(关闭所有选项卡),然后在新示例中重新打开。
这看起来像是一个缓存问题,其中缓存了以前版本的代码。

ffscu2ro

ffscu2ro3#

这个周末我也遇到了同样的问题。具体症状:

  • 在部署之前,我打开了example.web.app,但没有打开example.firebaseapp.com
  • 第一次部署后,example.web.app显示“Site not found”,但example.firebaseapp.com按预期工作。因此,我的客户域也显示“Site not found”。
    根据支持人员的建议之一,现在已通过以下命令修复:
curl -X PURGE https://your.notworking.url

对于我的情况,它只是example.web.app和我的自定义域。所以在20秒内修复。

起作用的建议:

  • 干扰浏览器(清除浏览器缓存、隐姓埋名模式等)
  • 重新部署

说明:
网站找不到的东西被缓存在他们的CDN服务器上。所以自然,清除本地浏览器缓存不起作用。奇怪的重新部署也不起作用。
另一个有用的提示是,在响应中有一个x-served-by头,它告诉你Web应用缓存在哪个CDN服务器上。
特别感谢来自火力支援的 Hugo Varela

相关问题