我有一个文件输出的问题,它真的很小,像4kb左右,文件说“400 - 错误的请求”。php下载文件在下载管理器
来自源代码,正确的大小是28.2mb。
$url = 'http://mozilla.isu.net.sa/firefox/releases/7.0.1/mac/en-US/Firefox%207.0.1.dmg';
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_BINARYTRANSFER, 1);
curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 360);
curl_setopt($curl, CURLOPT_COOKIEJAR, 'temp/cookie.txt');
curl_setopt($curl, CURLOPT_COOKIEFILE, 'temp/cookie.txt');
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_HEADER, true);
curl_setopt($curl, CURLOPT_MAXREDIRS, 10);
curl_setopt($curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.5) Gecko/20041107 Firefox/1.0');
$curl_out = curl_exec($curl);
curl_close($curl);
$filename = explode('/', $url);
$filename = $filename[count($filename)-1];
header('Content-Transfer-Encoding: binary');
header('Content-Disposition: attachment; filename="'.$filename.'"');
print($curl_out);
如果它不能处理更大的文件,另一种方法:我想从PHP和饼干下载着源链接...然后怎么样?
尝试vardumping curl_out并在文件检索中查找错误 – jancha
u mean var_dump($ curl_out)? – user453089
@jancha我试着'echo var_dump($ curl_out);'输出:'
串(349) “<! - ?XML版本=” 1.0" 编码= “ISO-8859-1”? - >400 - 错误要求
“ ' – user453089