使用Ionic和Vue 3,我写了一个运行良好的应用程序。我现在使用相同的代码将应用程序的功能放到我的网站门户子域。我有一个第二子域(www)指向一个单独的html网站在同一个托管区域。
www.example.com -> site1
portal.example.com-> site2
一切正常。如果我访问portal.example.com,我会得到正确的主页,其中包含各种选项,我单击这些选项,然后转到相关的vue页面,例如portal.example.com/contacts。然后,我可以单击联系人,它会显示正确的页面-portal.example.com/contacts/ba 76 ea 50-e1 b6 - 414 b
这就是问题所在。如果我将该URL(portal.example.com/contacts/ba 76 ea 50-e1 b6 - 414 b)复制\粘贴到另一个浏览器窗口中,我会得到Firebase Page not Found页面:
这告诉我的是,安装Vue 3应用的index.html页面在复制粘贴并直接转到url时没有被初始化。我不知道如何告诉Vue 3应用程序如何做到这一点。我猜它应该在portal.example.com firebase.json文件中:
"hosting": [{
"public": "dist",
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
],
"rewrites":[{
"source": "**",
"destination": "/index.html"
}]
}]
我看的是正确的地方,还是我完全走错了方向?这一点很重要,因为特定的URL会通过电子邮件发送给用户,以便他们可以点击并查看正确的数据。
1条答案
按热度按时间amrnrhlw1#
因此,解决方案与firebase.json相关。由于托管中有多个站点,因此每个站点都有一个firebase.json,再加上一个根级别的站点。根级别firebase.json将子域Map到站点。我还需要在firebase.json根目录中添加重写部分。