Re: Downloading very large files

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Feb 13, 2006 at 03:27:32PM -0700, Jonathan Duncan wrote:
> I have an application that delivers files to the client browser.  These 
> files a very large video files.  250mb+ each.  I have two options:  1) I 
> could have PHP deliver the file with "fread", or 2) I could have PHP 
> present a link to the file.  However, for security purposes, I would 
> rather not have the actual files available.  I suppose I could have PHP 
> create temporary symbolic links on the file system that link to the files 
> in question and then remove the links, thus requiring the users to go 
> through an authentication process to retrieve files that are assigned to 
> them.
> 
> Anyway, downloading such large files causes PHP to balk with size 
> limitation errors.  I could increase the size limit and memory limit 
> settings in "php.ini", but for file sizes that large, is it recommended? 
> Are there "best practice" limits on these settings:  max_input_time, 
> memory_limit, max_execution_time, etc.?

Well if things are done correctly, the only thing that may become
an issue is max_execution_time.  The basic logic for sending a file
with php is:

// authenticate the user (if they can download this or not)

// send headers, like content-length, content-type,
// content-disposition etc.

// set_timelimit(0); if the user is on a slow connection..

// ignore_user_abort(false);  see below

// use either readfile() or fpassthru()

// if this line is executed the user has mantained a connection so
// far, so you are pretty much sure they recieved, or it is a PEBCK
// issue, you can do things like add a successful counter or
// something here.


HTH, 

Curt.
-- 
cat .signature: No such file or directory

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux