Firebase托管-在iframe中显示不正确的内容

时间:2019-02-20 10:51:44

标签: firebase firebase-hosting

我有一个可在Firebase上运行的React应用,需要在IFrame中显示内容。在Firebase上运行时,firebase在IFrame中而不是相关页面上显示index.html。

所有文件都在同一目录中,但Firebase默认使用index.html而不是请求的页面

1 个答案:

答案 0 :(得分:0)

在命令行中进行预部署初始化Firebase项目时,您可能会在提示中回答“是”,询问该项目是否为单页应用程序。通过说是,CLI工具在firebase.json设置文件中生成了以下设置:

firebase rewrite settings

这告诉Firebase服务器将所有页面请求路由到您的index.html文件-注意通配符**-这样您的React应用程序可以加载适当的页面。

如果您不希望该规则中包含特定的路由,例如对其他文件的调用,则需要在该firebase.json设置文件中添加其他重写:

"rewrites": [
    {
        "source": "/more/**",
        "destination": "/more/anotherpage.html"
    },
    {
        "source": "**",
        "destination": "/index.html"
    },
 ]

* 请注意,顺序很重要,请确保顺序在“全部通配符”选项之前

您可以在official documentation的相关部分中阅读有关重写的更多信息。