free.fr上传大文件方法
用fsockopen来远程下载文件,虽然会500错误,但是不会超时,文件会一直下载完成为止!测试代码如下:<?php
/****
Powerd by haowenq
Form www.jgwy.net
2011.7.16
****/
$url="http://dbdown.2u.com.cn/system/ylmf_GHOSTXP_SP3V2010.8.iso";
$fileName = basename($url);
$urlParts = parse_url($url);
$socketHandler = fsockopen($urlParts["host"], 80, $errno, $errstr, 30);
if (!$socketHandler) {
exit("Connet error!");
} else {
if (file_exists($fileName)) {
$from = filesize($fileName);
}
$out = "GET ".$urlParts["path"]." HTTP/1.0\r\n";
$out .= "Accept: */*\r\n";
$out .= "Accept-Language: en-us\r\n";
$out .= "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)\r\n";
$out .= "Host: ".$urlParts["host"]."\r\n";
$out .= "Connection: Close\r\n";
$out .= "Cache-Control: no-cache\r\n\r\n";
$headerFound = false;
if (!$fileHandler = fopen($fileName, "a")) {
exit("Can not open file!");
}
fwrite($socketHandler, $out);
while (!feof($socketHandler)) {
if ($headerFound) {
$result = fread($socketHandler, 8192);
if (fwrite($fileHandler, $result) === false) {
exit("Can not save file!");
}
} else {
$result = fgets($socketHandler, 8192);
$result = trim($result);
if ($result === "") {
$headerFound = true;
}
}
}
fclose($fileHandler);
fclose($socketHandler);
echo "Well done!";
}
?>运行之后,本目录会多一个文件“ylmf_GHOSTXP_SP3V2010.8.iso”,下载完成之后大小为699.43 M!
附件同以上代码!
可以用不? 牛逼,膜拜 对于会超时,超内存的空间可以用断点续传。 此办法可行,已经测试 不错啊!
LZ的那个管理面板可否共享下呀。{:soso_e100:} 高 实在是高 cckkk 发表于 2011-7-16 21:32 此办法可行,已经测试
请你别那个别人送给我的小号折磨行不 cckkk 发表于 2011-7-16 21:32 此办法可行,已经测试
请你别那个别人送给我的小号折磨行不 这个东东不错。
直接WGET
页:
[1]
2