当前位置:  技术问答>linux和unix

1G文件在服务器上可以正常下载,但超过4G就下载后文件为0kb

    来源: 互联网  发布时间:2017-03-18

    本文导语:  本帖最后由 molaifeng 于 2012-10-15 16:43:27 编辑 //此为下载文件 function download($file_dir,$file_name)     {         $file_dir = chop($file_dir);// remove of the more space         // get the download file         if($file_dir != '')    ...

本帖最后由 molaifeng 于 2012-10-15 16:43:27 编辑

//此为下载文件
function download($file_dir,$file_name)
    {
        $file_dir = chop($file_dir);// remove of the more space
        // get the download file
        if($file_dir != '')
        {
            $file_path = $file_dir;
            if(substr($file_dir,strlen($file_dir)-1,strlen($file_dir)) != '/')
                $file_path .= '/';
            $file_path .= $file_name;
        }            
        else
            $file_path = $file_name;    
        
        // judge the download file exist
        if(!file_exists($file_path))
        {
            echo 'Sorry,the file not exist';
            exit;
        }
        
        $file_size = filesize($file_path);
       
        header("Content-type: application/octet-stream");
        header("Accept-Ranges: bytes");
        header("Accept-Length: $file_size");
        header("Content-Disposition: attachment; filename=".$file_name);
        
        $fp = fopen($file_path,"r");
        $buffer_size = 1024;
        $cur_pos = 0;
        
        while(!feof($fp)&&$file_size-$cur_pos>$buffer_size)
        {
            $buffer = fread($fp,$buffer_size);
            echo $buffer;
            $cur_pos += $buffer_size;
        }
        
        $buffer = fread($fp,$file_size-$cur_pos);
        echo $buffer;
        fclose($fp);
    }
$file_path = "../data/";
    // with the function
if(file_exists($video)){
download($file_path, "atrcd.tar");
}

`sudo /usr/local/asg/www/scripts/www-misc remDownloadFile`;  //移除服务器上的压缩文件

|
32位的机器吧, 4G是off_t能表示的最大值了,也就是说32位的机器不能操作4G以上的文件。

|
系统盘是FAT32格式的不支持下载超过4G的文件

|
恩 总之就是文件系统不支持大于4G的文件
ext2也不支持吧

    
 
 

您可能感兴趣的文章:

  • Centos6下安装Shell下文件上传下载rz,sz命令
  • 请问高手,有没有办法可以控制文件的下载?下载文件,一般通过地址链直接链接过去就可以下载,但有些文件是要某种条件下才可以让客户下载,如
  • sharepoint 2010 使用STSNavigate函数实现文件下载举例
  • jsp做下载文件,(如rar文件)为什么下载后,无法打开?
  • 求救:谁有从服务器下载文件(一次下载一个文件就可以)的class 文件或着着方面的信息吗?90分必送
  • 怎样让下载直接打开.exe文件 或者 .chm文件。 而不是变成下载框
  • 我要下载*.txt文件,怎样才能出现下载对话框,而不是在IE里面直接打开*.txt文件
  • 那里有FREEBSD下载,需要下载那些文件?
  • 怎么有的.tar.gz等压缩文件下载后,打开出错,我明明下载完了的啊!
  • 我要做一个论坛,还要能做软件的上传和下载,文件的上传和下载,要求yizi给与帮助!!!
  • 如何直接让用户在IE中下载XML文件(即自动弹出下载窗口)?
  • href下载文件根据id取url并下载
  • 请问如何使客户端浏览器一定下载某个文件,而不是打开该文件(哪怕这个文件是HTML或JPG)?
  • php实现文件下载简单示例(代码实现文件下载)
  • 下载了redhat,如何将iso文件变成光盘文件??
  • 客户端如何操作服务器的文件(如查看文件列表,上传,下载)(★)
  • 我是一个初学者,请教各位如何配置jsp的开发环境?tomact 以及apache已经下载,还需要一个ApacheModuleJserv.dll,这个文件到哪里下载?谢
  • ftp mget 如何下载文件大小大于0的文件?
  • linux中登陆win2003文件服务器,传送和下载文件的命令?
  • 为什么我上传文件的时候,如果遇到文件名是中文的,虽然可以上传,但不可以下载,怎么解决?
  • 哪位有可以下载 linux 下阅读 pdf文件 和 chm 格式文件的工具地址啊?
  • 求助,在Linux下当文件夹大小超过1G时,删除文件夹内容
  • Linux9上支持大文件吗(单文件超过2G)
  • 怎样获取超过4G的Linux Regular文件的大下?
  • 请教一下,如何用shell 编程实现删除超过一定时间以前的文件?
  • Unix的文件名字符长度能否超过14个?为什么?
  • 大容量文件系统烧写方法(超过10M)
  • 高分相送,用jspsmartupload上传文件,在webshpere3。5环境里面很好用,但是在4。0里面就只能上传不超过7k的东东了,怎么解决这个问题,
  • 从Solaris上如何备份超过4G的一个*.tar压缩文件?(急)
  • Window98环境下,编译.java文件,错误信息太多,超过ms-dos窗口一屏,如何看到所有的错误信息.谢谢
  • 如何用shell实现 删除创建时间超过指定时间的文件?
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • C++ I/O 成员 eof():如果处于文件结尾处则返回true
  • Shell脚本如何递归现实一个文件夹中的文件(文件夹中含有文件夹)
  • php开源软件 iis7站长之家
  • 求命令:什么命令可以把文件夹下所有的文件按修改时间先后排出来,包括子文件夹里的文件。
  • python异常信息堆栈输出到日志文件
  • [提问]Linux下如何把多个.a文件编译一个.so文件,或者把多个.so文件编译成一个.so文件
  • 在MyEclipse中设开启xml文件自动提示和自动完成功能
  • 请问:proc中的头文件中能包含头文件吗?(感觉如果头文件中包含头文件的话,在链接时就会有错误啊)
  • 修改配置真正解决php文件上传大小限制问题(nginx+php)
  • 我要实现当进程打开文件时,根据文件名判断是否符合要求,符合后处理文件,再把文件返回给进程,怎么实现啊
  • 修改配置真正解决php文件上传大小限制问题(apache+php)
  • vi 中编辑两个文件,怎样从其中一个文件拷一段内容到另一个文件中。(同时打开两个文件)
  • MyEclipse如何查看和设置文件编码格式相关操作
  • 怎么统计一个文件夹下有多少个文件(不包括文件夹)
  • 使用libpcap读取tcpdump抓取的文件并解析c代码实例
  • 请教高手一个简单问题:给定一个文件名,如何去查找该文件正在被几个程序使用,并怎么样才可以切断这个文件与正在打开该文件的程序之间的
  • 设置sharepoint 2010文档库中的 pdf文件在浏览器中访问的打开方式
  • linux 下的 .a 文件 .o 文件 是什么文件?各有什么作用?
  • windows/windows 7/windows 8 下打开查看、修改及保存超大(GB级)文本文件及其它类型文件的工具-PilotEdit
  • 如何用socket一次传输多个文件,如何确定文件一个文件结束
  • Linux_centos_redhat下tar命令解压tgz文件方法
  • 如何删除某个目录下除了指定文件夹之外的所有文件和文件夹


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3