部署两个工作区的 Firebase 托管
Firebase Hosting deploying two workspaces
我有两个工作区:
main
blog
使用 Quickstart Guide,我已成功将 main
工作区部署到 mycustomdomain.firebaseapp.com
。
我的firebase.json
看起来如下:
{
"firebase": "mycustomdomain",
"public": "/",
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
],
"rewrites": [ {
"source": "**",
"destination": "/index.html"
} ]
}
请注意,我使用重写来处理干净的 url,因为我正在托管 Angular 1.x 网站。
现在,我想将 blog
工作区的内容上传到域 mycustomdomain.firebaseapp.com/blog
。我怎样才能做到这一点?
一种方式:
"rewrites": [{
"source": "/blog/**",
"destination": "/blog.html"
}, {
"source": "**",
"destination": "/index.html"
}]
因此,路径以 /blog/
开头的任何请求都将由 /blog.html
处理,其他所有请求都将由 index.html
处理。
有了这个:
https://mycustomdomain.firebaseapp.com/
-> index.html
https://mycustomdomain.firebaseapp.com/blog/
-> blog.html
请注意最后一个斜杠 URL。否则,该请求仍将由 index.html
提供服务。如果您不希望这样,请将第一个重写更改为 "source": "/blog**"
这一切都归结为 glob pattern matching that Firebase Hosting uses to map the path to a destination. Use an online tester to play with them, if you've never done much with them. I just used http://www.globtester.com/。
我有两个工作区:
main
blog
使用 Quickstart Guide,我已成功将 main
工作区部署到 mycustomdomain.firebaseapp.com
。
我的firebase.json
看起来如下:
{
"firebase": "mycustomdomain",
"public": "/",
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
],
"rewrites": [ {
"source": "**",
"destination": "/index.html"
} ]
}
请注意,我使用重写来处理干净的 url,因为我正在托管 Angular 1.x 网站。
现在,我想将 blog
工作区的内容上传到域 mycustomdomain.firebaseapp.com/blog
。我怎样才能做到这一点?
一种方式:
"rewrites": [{
"source": "/blog/**",
"destination": "/blog.html"
}, {
"source": "**",
"destination": "/index.html"
}]
因此,路径以 /blog/
开头的任何请求都将由 /blog.html
处理,其他所有请求都将由 index.html
处理。
有了这个:
https://mycustomdomain.firebaseapp.com/
->index.html
https://mycustomdomain.firebaseapp.com/blog/
->blog.html
请注意最后一个斜杠 URL。否则,该请求仍将由 index.html
提供服务。如果您不希望这样,请将第一个重写更改为 "source": "/blog**"
这一切都归结为 glob pattern matching that Firebase Hosting uses to map the path to a destination. Use an online tester to play with them, if you've never done much with them. I just used http://www.globtester.com/。