您现在的位置是:网站首页>内容内容
用php实现远程网络文件下载到服务器_资源网
2023-12-06 14:08:11
【512953070@qq.com】
288人已围观
简介 用php实现远程网络文件下载到服务器_资源网
本文主要介绍如何用php程序实现将远程网络文件下载到自己的主机(服务器、虚拟主机)上,当然也提供asp、asp.net的源码给大家参考.
最近让 Lc. 下载《汪洋中的一条船》这部感人的励志电视剧,为了分享方便,于是我提供一个Godaddy的免费FTP.
考虑到稳定性和专一性,我想重新开启一个godaddy的免费空间,但是此时已经上传了两集,一共是400多兆.怎么办呢?
于是乎我想起了之前转移空间时用到的一个php文件,他可以下载远程网络文件到服务器上,也就是只要是可以下载的url,就可以转移到新的服务器上.
废话不多说,直接亮出将远程网络文件下载到服务器的php源码(测试通过,很好很强大).
< ?php // maximum execution time in seconds set_time_limit (24 * 60 * 60); if (!isset($_POST['submit'])) die(); // folder to save downloaded files to. must end with slash $destination_folder = 'temp/'; $url = $_POST['url']; $newfname = $destination_folder . basename($url); $file = fopen ($url, "rb"); if ($file) { $newf = fopen ($newfname, "wb"); if ($newf) while(!feof($file)) { fwrite($newf, fread($file, 1024 * 8 ), 1024 * 8 ); } } if ($file) { fclose($file); } if ($newf) { fclose($newf); } ?> |
当然还需要展示下asp版本的源码(未测试)
< % function downfilea(d_target, s_target) On Error Resume Next dim myhttp, objstream set myhttp = server.createobject( "msxml2.XMLHTTP ") myhttp.open "GET ", d_target, false myhttp.send() set objstream = Server.CreateObject( "adodb.stream ") objstream.Type = 1 objstream.Mode = 3 objstream.Open objstream.Write myhttp.responseBody objstream.SaveToFile s_target, 2 if err.number <> 0 then err.Clear end function downfilea "http://www.abc.com/xxx.rar ", Server.MapPath( "down/xxx.rar ") Response.write "ok " %> 还有asp.net版本的源码(未测试) using System; |
注意事项:
1.相关的目录可能需要建立,具体请看源码.比如temp/、down/.
2.其中php版本的源码是支持自定义url的,但asp、asp.net版本的并没有提供自定义.
3.在拷贝大文件时,国内估计支持欠佳.因为考虑到程序的超时时间,但在国外支持很好.
比如Blinux将一个近300M的文件转移到另一个服务器上耗费时间是28秒.这是国内无法想象的.
最后希望大家反馈下使用效果.
热评
- Win11重启速度慢怎么办?Win11重启慢的解决方法_windows11_Windows系列_操作系统_
- 微软透露下一次更新将如何加速Win11系统_windows11_Windows系列_操作系统_
- Win11 预览版 22563 出现重大 Bug:Win + X 导致资源管理器崩溃,解决方案出炉_windows11_Windows系列_操作系统_
- Win11怎么查看网卡速率?Win11查看网卡速率是千兆还是百兆方法_windows11_Windows系列_操作系统_
- Win11怎么设置显卡直连?Win11显卡直连设置教程_windows11_Windows系列_操作系统_
- 运行速度更快,微软 Win11/10 Edge 浏览器正测试“性能检测器”_windows11_Windows系列_操作系统_
- LTSC长期服务版!基于Win11,微软Windows Server VNext预览版25066发布(附 ISO 镜像下_windows11_Windows系列_操作系统_
- Win11如何开启3d加速 ? Win11开启3d加速的方法_windows11_Windows系列_操作系统_
- Win11无法输入wifi密码输怎么办?Win11 wifi密码输入不了的原因以及解决方法_windows11_Windows系列_操作系统_
- Win11开始菜单关机键不见了怎么办?Win11开始菜单关机键不见的解决方法_windows11_Windows系列_操作系统_
点击排行

- 微软透露下一次更新将如何加速Win11系统_windows11_Windows系列_操作系统_
- Win11 预览版 22563 出现重大 Bug:Win + X 导致资源管理器崩溃,解决方案出炉_windows11_Windows系列_操作系统_
- Win11怎么查看网卡速率?Win11查看网卡速率是千兆还是百兆方法_windows11_Windows系列_操作系统_
- Win11怎么设置显卡直连?Win11显卡直连设置教程_windows11_Windows系列_操作系统_
- 运行速度更快,微软 Win11/10 Edge 浏览器正测试“性能检测器”_windows11_Windows系列_操作系统_
- LTSC长期服务版!基于Win11,微软Windows Server VNext预览版25066发布(附 ISO 镜像下_windows11_Windows系列_操作系统_
- Win11如何开启3d加速 ? Win11开启3d加速的方法_windows11_Windows系列_操作系统_
- Win11无法输入wifi密码输怎么办?Win11 wifi密码输入不了的原因以及解决方法_windows11_Windows系列_操作系统_
- Win11开始菜单关机键不见了怎么办?Win11开始菜单关机键不见的解决方法_windows11_Windows系列_操作系统_
本栏推荐

-
微软透露下一次更新将如何加速Win11系统_windows11_Windows系列_操作系统_
-
Win11 预览版 22563 出现重大 Bug:Win + X 导致资源管理器崩溃,解决方案出炉_windows11_Windows系列_操作系统_
-
Win11怎么查看网卡速率?Win11查看网卡速率是千兆还是百兆方法_windows11_Windows系列_操作系统_
-
Win11怎么设置显卡直连?Win11显卡直连设置教程_windows11_Windows系列_操作系统_
-
运行速度更快,微软 Win11/10 Edge 浏览器正测试“性能检测器”_windows11_Windows系列_操作系统_
-
LTSC长期服务版!基于Win11,微软Windows Server VNext预览版25066发布(附 ISO 镜像下_windows11_Windows系列_操作系统_
-
Win11如何开启3d加速 ? Win11开启3d加速的方法_windows11_Windows系列_操作系统_
-
Win11无法输入wifi密码输怎么办?Win11 wifi密码输入不了的原因以及解决方法_windows11_Windows系列_操作系统_
-
Win11开始菜单关机键不见了怎么办?Win11开始菜单关机键不见的解决方法_windows11_Windows系列_操作系统_