我有一个Apache Web服务器,有一个图像的子文件夹。 出于某种原因,一些.png文件是以text / html而不是image / png的forms返回的。
没有任何表示权限问题,文件返回代码200和完整的大小。 我确信image / png已经设置,甚至尝试用.htaccess来强制它
任何想法在哪里看?
编辑:看起来像父目录上的.htaccessconfiguration问题。
对我来说问题是要传送的图像文件被命名为pear.php.net-sos8j3lis2j.png 。
Apache的AddHandler指令 – 用于将PHP解释器分配给.php文件 – 支持多个扩展 , pear.php.net.png被看作具有三个扩展名: .php , .net和.png 。 .php是第一个,给php解释器被调用。
text/html被apache或PHP发送出去,我不知道。
我需要做什么来解决这个问题:
replace所有的实例
AddHandler php-cgi .php
同
<FilesMatch \.php$> SetHandler php-cgi </FilesMatch>
你确定PNG文件是有效的图像文件? 如果您在Linux平台上,则可以尝试使用file命令
file somefile.png
该命令应该返回的东西沿线
PNG image data, 318 x 15, 8-bit/color RGB, non-interlaced
您也可以尝试使用图像查看器查看文件。
也许看看.png,.PNG,.pNG和.PNg。