我正在尝试使用cleanUrls
选项删除路由中的.html
。与firebase serve
在本地很好地协作。但是一旦部署到prod,就需要.html
。
我的测试网站:https://maptennis.firebaseapp.com/
点击“登录”将引导您前往/login
并提供404.将.html
附加到网址即可生效。
我的firebase.json配置文件:
{
"database": {
"rules": "database.rules.json"
},
"hosting": {
"public": "public"
},
"cleanUrls": true,
"trailingSlash": false
}
这里的任何见解都会很棒。
答案 0 :(得分:1)
我遇到了类似的问题。我的firebase.json文件看起来像这样:
{
"hosting": {
"public": "public"
},
"cleanUrls": true
}
我注意到我使用的是较旧版本的Firebase CLI。当我更新到最新版本并尝试使用相同的配置文件进行部署时,发生以下错误:
托管:我们在firebase.json中找到了一个托管密钥 托管未嵌套在托管密钥内的配置密钥。
请运行firebase工具:迁移以解决此问题。请注意 这将覆盖嵌套在托管内的任何配置键 使用firebase.json根目录下的配置键的键。
错误:托管密钥和旧托管密钥都存在 firebase.json。
我将json配置文件更改为:
{
"hosting": {
"public": "public",
"cleanUrls": true
}
}
部署成功,cleanUrls
这次工作了:)