【发布时间】:2011-06-07 14:35:41
【问题描述】:
我有一个问题。
我有一个处理文件上传的脚本,文件上传完成后,我通过 curl 将 $_FILES 数据发送到另一个本地脚本,该脚本处理文件并将其放置在适当的位置.
问题是,它在我的本地完美运行,使用以下 curl 设置:
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_POST,count($fields));
curl_setopt($ch,CURLOPT_POSTFIELDS,$fields_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
我运行 Windows 7,但是当我将脚本移动到我的专用服务器 (CentOS) 时,它停止工作。
经过一番研究,文件上传后,存放在/tmp目录下。
事实证明,上传到 /tmp 的文件在我的 curl 调用之前被删除。众所周知,一旦脚本执行完毕,PHP 会删除 tmp 文件上传。
有没有我可以在 CURL 中使用的设置来绕过这个问题?它在本地运行良好,我只是不明白为什么它不能在我的 CentOS 服务器上运行..
更新:它可以在我的另一台服务器上运行,该服务器也可以在 linux 上运行...我不知道更改它的具体设置是什么,但似乎每个服务器配置都是这一点不同。
【问题讨论】: