无法在Chrome下加载资源

时间:2010-12-08 17:01:43

标签: google-chrome cross-browser

网页上有很多图片。

其他浏览器正在正确下载它们,但Chrome不会加载它们。

在开发人员的控制台中,它为每个图像显示以下消息:

  

无法加载资源

此问题仅出现在Chrome中。

这是什么?

13 个答案:

答案 0 :(得分:263)

我最近遇到了这个问题并发现它是由“Adblock”扩展引起的(我最好的猜测是因为我在文件名中有“banner”和“ad”字样)。

作为快速测试,看看这是否是您的问题,请在隐身模式下启动Chrome并停用扩展程序( ctrl + shift + n )并查看您的网页现在是否有效。请注意,默认情况下,所有扩展程序都已在隐身模式下停用,除非您专门将其设置为运行(通过chrome://extensions)。

答案 1 :(得分:29)

检查网络标签,查看Chrome是否无法下载任何资源文件。

答案 2 :(得分:17)

如果它对任何人有帮助,我遇到了同样的问题并发现它是由“Do Not Track Plus”Chrome扩展程序(版本2.0.8)引起的。当我禁用该扩展时,图像加载时没有错误。

答案 3 :(得分:13)

还可以选择关闭网络资源的缓存。这对于开发环境可能是最好的。

  1. 右键单击chrome
  2. 转到'检查元素'
  3. 寻找网络'选项卡位于顶部。点击它。
  4. 选中'停用缓存'复选框。

答案 4 :(得分:8)

Kabir的解决方案是正确的。我的图片URL

/images/ads/homepage/small-banners01.png, 

这让AdBlock绊倒了。这对我来说不是一个跨域问题,它在localhost和网络上都失败了。

我正在使用Chrome的网络标签来调试和查找无法加载的特定图像的非常混乱的结果。第一个请求将不返回任何响应(状态“(待定)”)。在后面的行中,有第二个请求列出了原始URL,然后“重定向”作为启动器。重定向请求标头全部用于这个相同的base64编码数据的短行,并且每个都没有返回响应,尽管状态是“成功”:

GET      data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACklEQVR4nGMAAQAABQABDQottAAAAABJRU5ErkJggg== HTTP/1.1

后来我注意到这些内联样式已添加到所有图像元素中:

    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;

最后,我没有在控制台中收到任何“无法加载资源”消息,而是:

Port error: Could not establish connection. Receiving end does not exist.

如果发生任何这些事情,可能与AdBlock有关。将其关闭和/或重命名图像文件。

此外,由于AdBlock创建的内联CSS,我的促销滑块的布局正在被抛弃。虽然我在找到Kabir的解决方案之前能够解决CSS的布局问题,但CSS有点不必要,并且影响了滑块处理多种尺寸图像的灵活性。

我猜教训是:小心你的图像命名。这些图像并非恶意或令人讨厌,因为它们以不引人注目的方式向访问者提醒当前的促销和特价。

答案 5 :(得分:7)

如果图像是通过ASP Response.Write()生成的,请确保不要拨打Response.Close();。 Chrome不喜欢它。

答案 6 :(得分:4)

我收到此错误,仅在Chrome(最新版本24.0.1312.57 m)中,并且仅在图片大于html img时才会出现此错误。我使用php脚本输出这样的图像:

header('Content-Length: '.strlen($data));
header("Content-type: image/{$ext}");
echo base64_decode($data);

我决定在图像的长度上添加1:

header('Content-Length: '.strlen($data) + 1);
header("Content-type: image/{$ext}");
echo base64_decode($data);

似乎Chrome不希望有正确的字节数。

在Chrome和IE 9中测试成功。希望这有帮助。

答案 7 :(得分:3)

Reenable (temporary) showModalDialog support in Chrome (for Windows) 37+ 中有一个临时解决方法。

基本上,在

的注册表中创建一个新字符串
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome\EnableDeprecatedWebPlatformFeatures

在EnableDeprecatedWebPlatformFeatures键下,创建名称为1且值为ShowModalDialog_EffectiveUntil20150430的字符串值。要验证是否已启用该政策,请访问chrome://policy网址。

答案 8 :(得分:3)

仅供参考 - 我也有这个问题,事实证明我的html列出了带有.JPG大写字母的.jpg文件,但文件本身是小写的.jpg。这在本地使用Codekit很好,但是当它被推送到网络时它不会加载。只需将文件名更改为具有小写的.jpg扩展名以匹配html即可。

答案 9 :(得分:2)

事实:

答案 10 :(得分:1)

在Chrome(Canary)中,我取消选中" Appspector"延期。这清除了错误。 enter image description here

答案 11 :(得分:1)

我将Chrome浏览器更新到最新版本,问题已修复。

答案 12 :(得分:1)

这是由于广告拦截器引起的。当项目文件名中包含诸如“ ad”之类的字词时,广告拦截器也会阻止这些文件加载​​。

最佳解决方案是永远不要使用这些名称键保存任何文件。