Firebase 托管重写在本地工作但不在云中工作 - 错误?

Firebase hosting rewrites working locally but not in cloud - bug?

这是我的 firebase.json 文件:

{
  "hosting": {
    "target": "md-viewer",
    "public": "public",
    "ignore": [
      "firebase.json",
      "**/.*",
      "**/node_modules/**"
    ],
    "rewrites": [
      {
      "source": "/",
      "destination": "create_md.html"
    },
    {
      "source": "/view/*",
      "destination": "show_md.html"
    }]
  }
}

当 运行 firebase serve 时,重写按预期工作。但是,部署并打开我的应用程序 ("appname.firebaseapp.com") returns 404。部署成功,因为我可以自定义 404 页面,并通过直接请求访问我的文件(例如 appname.firebaseapp.com/show_md.html)。

怎么了? firebase serve 不应该反映在线行为吗?

如果重写规则中的“destination”键是文件,则必须用绝对路径引用它:

    "rewrites": [
      {
      "source": "/",
      "destination": "/create_md.html"
    },
    {
      "source": "/view/**",
      "destination": "/show_md.html"
    }]

此外,根据 the documentation.

,“/view”重写需要两个星号