Firebase托管URL重写模式匹配

时间:2018-11-23 15:57:51

标签: firebase firebase-hosting

我该如何重写网址:

http://somedomain.com/page.html

http://somedomain.com/DIRECTORY/page.html

在Firebase托管中

。我在firebase.json中尝试过,但是没有用。

  "rewrites": [ {
      "source": "/**.html",
      "destination": "/DIRECTORY/**.html"
    } ]

模式匹配在Firebase托管配置中如何工作。帮助将不胜感激。

1 个答案:

答案 0 :(得分:2)

来自Firebase Hosting documentation on rewrites

  

rewrites属性包含一个重写规则数组,其中每个规则必须包含:

     
      
  • 一个source指定一个glob pattern

  •   
  • 一个destination,它是必须存在的本地文件

  •   

因此,您似乎只能重写为特定的现有文件,而不能重写为另一个通配符。

您可以考虑改用重定向,因为那些 do 支持dynamic segments in their destination URL

"redirects": [ {
  "source": "/:page*",
  "destination": "http://somedomain.com/DIRECTORY/:page",
  "type": 301
}]

这会将重定向指令发送回客户端,因此他们将能够看到最终路径。