资源解释为图像,但使用MIME类型text / html传输 - Magento

时间:2011-11-08 21:02:11

标签: php magento

我为Magento商店上传新产品图片时遇到以下错误。

Resource interpreted as image but transferred with MIME type text/html

为什么会发生这种情况?

15 个答案:

答案 0 :(得分:42)

如果图像路径设置不正确,可能会发生这种情况。例如,相对于当前目录“images / myimage.gif”与相对于web根目录“/images/myimage.gif”。

对“text / html”的引用可能表示服务器返回了错误。

答案 1 :(得分:12)

我注意到此问题出现在我的JavaScript控制台日志中。这是一个简单的CSS文件,查找不存在的背景图像,服务器在其位置发送404错误消息。

答案 2 :(得分:5)

需要使用正确的MIME类型提供图像 -

将此行添加到.htaccess文件中(假设它是apache2 httpd):

AddType image/gif .gif

提示:mod_rewrite可能需要排除图像:

RewriteCond %{REQUEST_URI} !\.(png|gif|jpg)$
RewriteRule ...

......其他一切可能确实是404。

答案 3 :(得分:3)

由于大写,我曾遇到同样的问题。

我的同事正在Mac上工作,并添加了一些骆驼文件,但它在CSS中表现较低。这在Mac上工作正常,但我在Linux上工作。 Mac没有区分具有不同情况的文件名,但Linux确实如此。大多数服务器都在Linux上运行。

示例:

epicimage.jpg !== EpicImage.jpg

感谢Chrome Dev Tools,可以轻松找到问题所在。只需点击图片网址就会向我展示我们的404页面。神秘解决了:D

答案 4 :(得分:2)

我基本上检查了StackOverflow上每个类似的问题,试图解决类似的问题。

在改变我的htaccess文件和插入php头部参数的所有尝试之后,为我修复的是......只是更改了图片名称的大小写。

唉。 (它在本地托管的同一个浏览器中运行良好......当然我不认为这是最初的问题。)

答案 5 :(得分:2)

经过大量的研究,我发现问题是由于服务器不知道它是什么类型的文件以及在UTF-8之类的编码类型(或类似的东西)之间混淆而引起的。 )

因此,在.htaccess中,更改注释,以便您拥有以下内容,并提供UTF-8的默认字符集。

############################################
## Prevent character encoding issues from server overrides
## If you still have problems, use the second line instead

    #AddDefaultCharset Off
    AddDefaultCharset UTF-8

这停止了google中显示的正确错误(谢谢你,谷歌): “资源被解释为图像但使用mime类型text / html传输”

使图像显示在其他浏览器中(没有显示错误)。

答案 6 :(得分:2)

请检查图片的扩展程序,是否使用的程序使用大写字母或小写字母创建图片标签,部分服务器将其读取不同。

答案 7 :(得分:2)

我的问题在于CSS中的这一行

background-image: url(''); 

应该是:

background-image: none;

答案 8 :(得分:0)

对我来说,我的路径设置错误,相对于尝试从控制台中触发错误的图像拉出的css文件。

我必须出去2个目录,然后进入拥有我的图像的那个目录。..在斜杠之前将你带出目录。每个。带你再出一个目录。

离。 url(../ Folder / ImagesFolder / image.gif)

答案 9 :(得分:0)

如果您的图像路径和区分大小写的文件名设置正确,并且您无法修改服务器的.htaccess文件,则将SVG编码为数据URI是一个前端解决方案。 css-tricks.com解释如何: http://css-tricks.com/using-svg/

答案 10 :(得分:0)

当我通过img标签包含SVG图像时,这发生在我身上。如果您通过标记包含SVG图像,则需要切换到Object标记: <object type="image/svg+xml" data="imageFile.svg"> Test SVG Logo </object>

答案 11 :(得分:0)

对我来说,这个mime类型错误仅在每个客户端要求测试Safari 4.05时显示,并且仅在控制台中显示。最终,这是由于Safari非常谨慎地处理javascript样式element.style.backgroundImage="url()";引起的。显然,Safari正在寻找那个空网址,所以根据Strixy和stevecomrie,&#34; none&#34;是更好的选择。这与上面提到的基本相同的问题是Resource interpreted as other but transferred with MIME type text/javascript?的近似重复,其中<script src="">是罪魁祸首。

答案 12 :(得分:0)

对于magento2用户

如果您修改了此文件 app / etc / di.xml 以下

<item name="view_preprocessed" xsi:type="object">Magento\Framework\App\View\Asset\MaterializationStrategy\Copy</item>

确保路径字符串区分大小写(非Windows操作系统的CaseSensitive)

如果您在 Ubuntu 中安装magento2后面临404错误。

安装并启用重写模块

a2enmod rewrite

然后编辑

 /etc/apache2/sites-available/000-default.conf

在结尾添加以下行

<Directory "/var/www/html">
    AllowOverride All 
</Directory>

答案 13 :(得分:0)

图片可能没有读取权限

我也遇到了这个问题,当我使用TinyPNG来压缩图像时,我得到了这个错误信息&#34;资源被解释为图像但是使用MIME类型text / html&#34;进行传输。然后我添加图像权限,它可以工作。

答案 14 :(得分:-1)

图像使用错误的标题发送,通过.htaccess

将标题添加到图像类型