Firebase主机重写全局行为问题

Firebase主机重写全局行为问题,firebase,firebase-hosting,Firebase,Firebase Hosting,我已经建立了一个firebase托管项目,包含三个页面和我的自定义域设置。这些页面根据url中的不同路径被点击。firebase.json文件如下所示 { "hosting": { "public": "public", "ignore": [ "firebase.json", "**/.*", "**/node_modules/**" ], "rewrites": [ { "source": "/main"

我已经建立了一个firebase托管项目,包含三个页面和我的自定义域设置。这些页面根据url中的不同路径被点击。firebase.json文件如下所示

{

    "hosting": {

    "public": "public",

   "ignore": [
     "firebase.json",
     "**/.*",
     "**/node_modules/**"
    ],

   "rewrites": [ {
       "source": "/main",
       "destination": "/index.html"
   },{
       "source": "/waitlistview/**",
       "destination": "/waitlistview.html"
   },{
       "source": "/mwaitlistview/**",
       "destination": "/waitlistview-minimal.html"  
   } 
   ],

   "cleanUrls": true
   }
}
现在,当我尝试url时:

foodini.co.in/waitlistview
404页面没有出错,我仍然点击了我的页面

然而,如果我点击url:

foodini.co.in/mwaitlistview
我得到了404页,正如我所期望的


如何使第一个url也转到404页根据firebase hosting docs,hosting first尝试将公用目录中的文件映射到url中的路径。只有在没有这样的文件时,重写才会生效

在我的例子中,我在公用文件夹中直接有一个文件/waitlistview.html。因此,firebase宿主只是将url映射到该文件,即使没有尾部斜杠。重写从未发生,因此没有404页

对于任何感兴趣的人:

默认域名直接映射到index.html,无需任何特定路径

另外,通过全局匹配,/waitlistview**与/waitlistview/Ahmedabad/xyz路径不匹配,因此请在**

添加之前加一个斜杠

 "trailingSlash": false,
排队前

  "cleanUrls": true
原因是/waitlistview中的foodini.co.in与/waitlistview/不匹配,它将与/waitlistview匹配