Firebase在404上呈现自定义页面
我正在为我的站点使用Firebase主机,如果有人尝试像my.site/contact这样的直接链接,他们会看到Firebase呈现的标准404 我想用我自己的页面替换它,因此我创建了一个名为404.html的页面,并放置在Firebase在404上呈现自定义页面,firebase,firebase-hosting,firebase-cli,Firebase,Firebase Hosting,Firebase Cli,我正在为我的站点使用Firebase主机,如果有人尝试像my.site/contact这样的直接链接,他们会看到Firebase呈现的标准404 我想用我自己的页面替换它,因此我创建了一个名为404.html的页面,并放置在src/以及src/app/ 然而,这是行不通的。我的firebase.json如下所示: { "hosting": { "public": "dist", "ignore": [ "firebase.json", "**/.*",
src/
以及src/app/
然而,这是行不通的。我的firebase.json
如下所示:
{
"hosting": {
"public": "dist",
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
]
}
}
我可以接受的另一个选择是引导人们登录页面。我想这需要在firebase.json中添加路由规则,请阅读
您的
404.html
文件必须位于公共内容目录的最顶层,根据您的配置,它看起来应该是dist
确保您的404.html页面与index.html位于同一页面中。。。你说你的网站显示Firebase默认的404页面。这意味着您的项目目录中有404.html文件。你应该搜索它并替换为你自己的你在这里是正确的。但是,在执行ng serve dist时,会创建不带404.html的目录,当我执行firebase部署时,firebase会上载该目录并删除该目录。所以,基本上解决方案是手动复制,但这是一件痛苦的事情,你可以编写一个脚本,在一个命令中完成所有事情。是的,做这样一件简单的事情,处理404页面,似乎只是一个开销。也许你应该问第二个问题,看看是否有正确的方法来做这件事。firebase工具对您没有帮助。这将是Angular工具的一个问题——类似于“如何指定要复制到dist
中的其他文件?”