0

我正在运行 Apache/2.2.3 (CentOS)。出于某种原因,某些图像、jpg、gif 或 png 在直接在服务器上访问时会显示为字节码。Firefox 3 和 Safari 都认为内容类型是 text/html。我相信 IE 内置了一些东西来识别它是图像并忽略内容类型并正确渲染图像。我似乎找不到其他有这个问题的人。这方面的一个例子可以在

http://www.thedacs.com/admin/gp/userfiles/image/gp28_img_01.jpg

但是下面的图像在同一台服务器上正确渲染了图像(使用上面的相同路径)

Fig3mod.jpg

第一张图像在 Photoshop CS、Illistrator、GIMP、Paint.net 和任何其他图像编辑软件中都能正常工作。从尝试多种文件格式到打印屏幕和裁剪以创建新图像以丢失旧图像元数据,我在编辑图像时尝试了所有方法。有人可以帮忙吗?

4

1 回答 1

0

您的 HTTP 服务器文件标识为 text/html。

这不是浏览器的问题(除了 IE,它会忽略 http 服务器并随心所欲地做任何事情,其他浏览器实际上会监听 https 服务器。如果它说文件是 text/html,他们相信它),或者使用您的图像编辑器,但您的 Apache 实例存在配置问题。

我猜这发生在所有 jpg(和 png、gif 等)上。

如果所有此类文件都发生这种情况,请确保在 httpd.conf 中有一行,例如

TypesConfig "/etc/mime.types"

还要确保文件 (/etc/mime.types) 存在并且具有有意义的内容。

如果不是所有此类文件都发生这种情况,请测试它是否是特定于目录的(即发生在 .../images/... 目录中的所有文件。在这种情况下,您可能有一个 .htaccess 文件更改了 mime 类型配置对于带有“AddType”指令的目录,或 httpd.conf 或虚拟主机配置文件中的其他 AddType 指令。删除这些错误的指令。

于 2009-11-09T13:32:04.757 回答