Firebase Hosting安全检测检出公开.bash_history文件该如何处理
Firebase Hosting 公开.bash_history文件解决方案
第一步:清理本地部署目录冗余文件
Firebase Hosting 是静态托管服务,线上所有文件都来自你本地部署时上传的内容,不存在直接登录远程主机删除文件的操作,首先排查本地的托管资源目录:
- 确认你项目中Firebase Hosting对应的公共资源目录(默认是项目根目录下的
public文件夹,可查看firebase.json中hosting.public字段确认实际路径) - 分别检查该目录的根目录、
cgi-bin子目录、scripts子目录下的隐藏文件,找到.bash_history后直接删除 - 可同步清理其他不应该对外公开的隐藏文件,比如
.DS_Store、.env、.git相关文件等
第二步:配置部署忽略规则避免后续误传
打开项目根目录下的firebase.json,在hosting配置块中添加ignore规则,自动过滤敏感文件不上传:
{ "hosting": { "public": "public", "ignore": [ "**/.bash_history", "**/.*", "**/.env*", "**/node_modules/**" ], // 保留你原有其他配置,比如rewrites、headers等 } }
其中**/.bash_history规则会匹配所有子目录下的.bash_history文件,部署时自动跳过。
第三步:重新部署覆盖线上资源
本地修改完成后,执行部署命令更新线上资源:firebase deploy --only hosting
Firebase会自动对比本地和线上的文件差异,移除你本地已经删除的.bash_history文件。
第四步:验证修复结果
部署完成后,直接访问三个检测出的.bash_history路径,确认返回404状态即代表修复完成。
如果你使用CI/CD自动部署,需要同步检查CI构建环节的输出目录,确认构建过程不会生成
.bash_history类文件,同时在CI环境的部署配置中也添加相同的ignore规则。
内容的提问来源于stack exchange,提问作者Alguru
相关产品推荐
相关产品推荐

