获取文件时getimagesize失败

Posted

技术标签:

【中文标题】获取文件时getimagesize失败【英文标题】:getimagesize fails when fetching a file 【发布时间】:2012-12-23 23:15:19 【问题描述】:

我在使用getimagesize() 时遇到了一些问题。上传文件后,将后者放入 .但是当我打电话给getimagesize()(或fopen())时,我收到了这个错误信息

getimagesize(http://mysite.com/files/documents/file_upload.png) [function.getimagesize]:打开流失败:HTTP 请求失败! HTTP/1.1 404

我把这个网址放到浏览器中,图片就正常显示了。

【问题讨论】:

请记住,getimagesize 是自己的请求,如果它没有看到它识别的浏览器(客户端),服务器可能会返回不同的响应,以避免机器人等。跨度> 看起来您已经找到了解决方案,只需使用浏览器请求图像,然后将其存储在您的服务器上,然后... :) - 检查请求标头。 对不起,我不明白,因为我用过很多次,而且效果很好。那我该怎么办,因为它真的是一个正常的上传过程?我应该检查权限吗? 用您的浏览器发出请求,但看看发送了哪些请求标头。然后将相同的请求标头添加到fopen 的 HTTP 上下文选项中。然后它就可以正常工作了。 对不起,我是个新手,发现Accept:text/html,application/xhtml+xml,application/xml;q=0.9,/ i>;q=0.8 Accept-Charset:ISO-8859-1,utf-8;q=0.7,*;q=0.3 Accept-Encoding:gzip,deflate,sdch Accept-Language:en,fr-FR;q= 0.8,fr;q=0.6,en-US;q=0.4 Connection:keep-alive 【参考方案1】:

联系您要请求图像的服务器所有者,并询问获取图像的技术要求。店主会告诉你必须做什么,或者一般不支持像你这样用 php 脚本请求图片。

但是只有服务器所有者可以告诉你。 HTH。

【讨论】:

以上是关于获取文件时getimagesize失败的主要内容,如果未能解决你的问题,请参考以下文章

PHP 获取图像信息 getimagesize 函数

php - 获取图像信息 getimagesize 函数

PHP getimagesize()获取图片尺寸等信息

php获取图片真实后缀的两种方法

php getimagesize()函数获取图片宽度高度

PHP处理上传文件信息数组中的文件类型 正确获取