提问人:ttoshiro 提问时间:6/2/2020 最后编辑:Frank van Puffelenttoshiro 更新时间:6/3/2020 访问量:2954
如何更改 Firebase 提供的文件的目录/文件路径?
How to change the directory/file path of a file being served by Firebase?
问:
我目前正在通过 Firebase 托管一个静态网站,但正在提供的文件 () 存在于我 Mac 计算机的公共文件夹中。由于我想提供其他文件,因此我想将索引移动到将包含未来链接文件的项目文件夹(例如)。index.html
/public/my-project/index.html
如何更新文件路径/目录?
答:
在项目目录(运行 或 的目录)中,打开或创建并确保它指向正确的公用文件夹。firebase deploy
firebase deploy --only hosting
firebase.json
{
"hosting": {
"public": "public"
}
}
这是一个相对路径。如果您的项目和 your 位于 中,则会将所有内容部署在 中。firebase.json
/projects/my-project
/projects/my-project/public
如果您使用 初始化 Firebase 项目,则所有这些都会自动设置。firebase init
由于您的项目可能包含许多不应该部署的文件(自述文件、node_modules、构建脚本等),因此我建议在项目文件夹中有一个文件夹,如上所述。(但是,您可以使用该选项忽略文件,但您希望使此忽略文件列表易于管理。public
ignore
如果你真的不想在你的项目中有一个文件夹,你可以尝试从你的public
firebase.json
{
"hosting": {
"public": "."
}
}
有关托管配置的详细信息:https://firebase.google.com/docs/hosting/full-config
评论
/public/
/public/
/public/my-project/index.html
/public/index.html
firebase.json
public
/public/my-project/public/index.html
firebase.json
public/my-project/firebase.json
public
{ hosting: { "public": "public" } }
public
firebase.json
{ hosting: { "public": "." } }
firebase init
我在终端中调整设置时不小心发现了答案,这比我预期的要简单得多。为了将来参考任何看到此内容的人,
打开终端,然后输入(假设您已经安装了 node.js 和 firebase)。
firebase init
使用箭头键向下导航到该选项,按空格键进行选择,然后按键继续。
○ Hosting
Return/Enter
问题“你想用什么作为你的公共目录?”将提示。键入所需的文件路径(即 )并输入。
public/my-project/public
问题“配置为单页应用(将所有 url 重写为 /index.html)?这是您的选择,取决于您的平台。
如果该位置已存在名为 file 的文件,它将询问您是否要覆盖它并创建一个新文件。最有可能的是,您将希望保留您拥有的现有索引 -- 如果是这种情况,请键入 .
index.html
n
请务必遵循 @nicoqh 的宝贵建议,并区分您的公共文件夹和私人文件夹,以便并非所有文件最终都会被 Firebase 部署。
评论