我的网站拒绝提供.png文件

时间:2010-07-07 20:59:08

标签: apache png

将站点从暂存环境移动到生产环境时,不会显示.png图像文件。当直接转到图像时,firefox报告:

无法显示图片(图片路径),因为它包含错误。

我在apache配置中检查过mime.types,它包含一行

image / png png

有谁知道造成这种情况的原因是什么?我以前从未见过这个。

7 个答案:

答案 0 :(得分:5)

我解决了检查文件名中大写字母的相同问题。我所有的.png文件都有大写的.PNG后缀。把一切都做成了小案,它起作用了。

答案 1 :(得分:4)

尝试修复它的两周时间同样存在问题。

在ubuntu linux上,问题与sendfile有关。基于内核的os函数与apache2无法正常工作。  Just added "EnableSendfile off" to my apache2.conf and images now load OK.

我希望有所帮助。

http://ubuntuforums.org/showthread.php?t=1385583

答案 2 :(得分:3)

  1. 检查.htaccess文件网址重写或任何权限/限制等。

  2. 上传任何png图片,并尝试使用ur png文件的直接路径打开浏览器。例如http://localhost/images/test.png(如果它工作正常,则表示您的apache成功完成了您的png)

  3. 检查您是否在之前的服务器(主机)中创建了images目录的任何符号链接。

  4. 检查您的目录权限。

  5. 清除浏览器缓存。

  6. 检查您的主要主机中的appach虚拟主机文件httd.conf。可能是之前已经创建了一些别名或类似的东西。 httpd.conf中: ...

     <VirtualHost www.mydomain.com:80>
                 ServerAdmin hostmaster@www.mydomain.com
                 DocumentRoot /home/www/www.mydomain.com/htdocs
                 ScriptAlias /cgi-bin/ /home/www/www.mydomain.com/cgi-bin/
                 ServerName www.mydomain.com
                 Alias /images/ /home/www/www.mydomain.com/images/
                 Alias /pictures/ /home/www/www.mydomain.com/upload/
                 Alias /errors/ /home/www/www.mydomain.com/errors/
                 Alias /catalog/ /home/www/www.mydomain.com/catalog/
                 ErrorLog /home/www/www.mydomain.com/logs/error_log
                 CustomLog /home/www/www.mydomain.com/logs/access_log
                 ScriptLog /home/www/www.mydomain.com/logs/script_log
                 ErrorDocument 403 /errors/403.html
                 ErrorDocument 404 /errors/404.html
                 ErrorDocument 500 /errors/500.html
         </VirtualHost>
    
  7. 让我知道这是否有效

答案 3 :(得分:2)

如果您的图像是真实的:可能在FTP传输过程中图像被破坏(不完整或不良/非二进制传输)。从服务器下载并查看它。

如果您的图片是虚拟的或脚本生成的:发布代码,我们可以看看它!如果您在<?php开始标记之前有一些字符,则通常会发生这种情况。

答案 4 :(得分:1)

不幸的是,很多事情可能很多:

  • 检查文件的文件权限,并确保apache可以读取它们
  • 这是一个'实际'文件,还是来自数据库或类似文件?如果它来自数据库或代码,则调查实际字符串以确保正确生成内容。如果有错误,它们会破坏图像的输出
  • 该文件实际上可能已损坏(尝试重新上传)

答案 5 :(得分:0)

配置文件注释说

“从网络安装的文件系统提供服务时,必须关闭”EnableSendfile ,否则系统会损坏对这些功能的支持。“

这对我来说是个问题。

答案 6 :(得分:0)

通过FTP传输时,请确保以二进制模式传输图像