图像未显示在托管网站中

时间:2016-03-21 19:36:39

标签: firebase-hosting

感谢您抽出时间来研究这个问题,我尽可能地研究,但我没有提出任何建议。我看到一个关于等待图像处理的类似堆栈溢出帖子,但我已经等了大约2.5小时,图像仍然缺失。

我在Firebase中使用angularfire。我正在使用grunt构建来创建一个dist文件夹,这就是我正在部署到Firebase的内容。 dist文件夹包含一个images文件夹,firebase说它在部署时上传了780个文件(在我添加图像之前它大约是25个)。

但是,图像似乎没有显示出来。网址格式为my-app.firebaseapp.com/images/image-name.jpg

我的firebase.json文件如下所示,非常基本。

{
  "firebase": "<redacted>",
  "public": "dist",
  "ignore": [
    "firebase.json",
    "**/.*",
    "**/node_modules/**"
  ]
}

应用程序本身部署得很好并且有效,所有图像都只是404。我提前道歉,因为我猜的是一些非常基本的东西。

3 个答案:

答案 0 :(得分:5)

重新部署一百万次都无济于事后,我认为我必须进行故障排除并找出问题所在。我检查了文件的网址,即https://exampleApp.firebaseapp.com/img/myimg.png或您的情况。本质上,我的问题只是区分大小写。因此,该文件不是myimg.png而是存储为myimg.PNG。因此,只需检查扩展名是否是您的问题。

答案 1 :(得分:2)

这可能是因为srcrelhref标记包含absolute url,这会导致在获取正确文件时出现firebase问题。 您必须做的是,让所有网址都是相对的,例如:images/image1.png 即使使用cssjs链接,您也必须这样做。 此外,您必须将所有内容存储在名为public的文件夹中,或者在命令提示符中提示有关将特定目录用作公共目录时,您必须将名称更改为您的目录。

答案 2 :(得分:1)

所以,我有点解决了这个问题。在构建过程中Grunt的imagemin事情做了什么&#34;&#34;到导致它们不显示的图像。我将弄清楚最终会发生什么,并希望更新这篇文章,万一其他人将来遇到这个问题。但与此同时,只需用源替换已构建的图像文件夹就可以解决问题。