Well, the reason I stayed away from trying to use fgets for a single block
at a time were because of some of the comments from
http://php.net/manual/en/function.fgets.php

Anyways, an offtopic question if I may, I've tried making .htaccess
parseable by PHP using AddType and also attempting to do it by making
.htaccess a PHP-CGI file, to no avail. Is this something that is possible to
do with PHP? I have seen examples where mod_perl is used to generate
.htaccess files on the fly but nothing when it comes to PHP. If there is any
documentation in this are I would really be keen to see it.

-Stephen

-----Original Message-----
From: Rasmus Lerdorf [mailto:[EMAIL PROTECTED]]
Sent: Friday, May 18, 2001 12:56 AM
To: [EMAIL PROTECTED]
Cc: [EMAIL PROTECTED]
Subject: Re: [PHP-DEV] Bug #10701 Updated: readfile usage on large files


Well, you'd want to do it one block at a time.  But yes, if you are going
to be reading the files with PHP that's what you'll end up doing at some
level anyway.  Otherwise look at Apache's mod_header and perhaps
dynamically generate the header information and write the appropriate
.htaccess files or something...  But now we are well beyond having
anything to do with PHP.

-Rasmus

On 18 May 2001 [EMAIL PROTECTED] wrote:

> ID: 10701
> User Update by: [EMAIL PROTECTED]
> Status: Closed
> Bug Type: Filesystem function related
> Operating system: Linux 2.4.x
> PHP Version: 4.0.5
> Description: readfile usage on large files
>
> You are kidding right? Nice way to take down a server.
>
> load average: 66.52, 33.25, 15.76
>
> $fp = fopen("/web/sites/contentsite/".$f);
> while(!feof($fp))
>        {
>        echo fgets($fd, 4096);
>        }
> fclose($fp);
>
> Previous Comments:
> --------------------------------------------------------------------------
-
>
> [2001-05-18 00:28:19] [EMAIL PROTECTED]
> What's to claim.  This is a support question that belongs on one of the
mailing lists and not in the bug database.
>
> But a hint.  Don't use readfile(), fopen() the file and read it a bit at a
time instead of sticking the entire thing in memory.
>
> --------------------------------------------------------------------------
-
>
> [2001-05-17 17:29:33] [EMAIL PROTECTED]
> Anyone plan on claiming this?
>
> --------------------------------------------------------------------------
-
>
> [2001-05-07 07:34:13] [EMAIL PROTECTED]
> Ok, this is a pretty intersting one, and I'm not even sure if it's a bug
or just a memory limit thing. I am using a php wrapper for content files
(.jpg|.gif|.asf|.mov|.ram), as you can guess, the movie files can be pretty
large, upwards of 10MB, all getting read into memory, then spit back out.
Couple that with a site that gets 10K+ visits a day and the server is on its
knees with a load average of about 10 (when it gets to 25/30 things start
swapping and it will dies not long after that.)
>
> here's the code used to wrap the content:
>
> <?php
> $mime_type = strtolower(strrchr($f,'.'));
> $mime_type_array = array(
>         '.asf' => 'application/vnd.ms-asf',
>         '.jpg' => 'image/jpeg',
>         '.gif' => 'image/gif'
>         );
>
> if(!in_array($mime_type,array_keys($mime_type_array)))
>         {
>         header("Location: /error.php");
>         }
>
> $offset = 86400 * 3;
> header("Expires: ".gmdate("D, d M Y H:i:s GMT", time() + $offset));
> header("Cache-Control: max-age=".$offset.", must-revalidate");
> header("Last-modified : ".gmdate("D, d M Y H:i:s GMT",
filemtime("/web/sites/contentsite/".$f)));
> header("Content-type: ".$mime_type_array[$mime_type]);
> header("Content-length: ".filesize("/web/sites/contentsite/".$f));
> @readfile("/web/sites/contentsite/".$f);
> ?>
>
> so, I would pass an image or movie to the content file with a url like so:
>
> http://contentsite.com/content.php?f=movies/bigmovie.asf
>
>
> This is really just a heads up at this point, I know it will take you guys
a little while to sort through this one, I'm not even sure it's a bug
considering readfile is SUPPOSED to read a file into memory and spit it back
out. I dunno, for now I'm going to do some .htaccess tricks where I force
php to parse .htaccess files. If anyone has come across this or has any
insight on wrapping content in php files, please email me at
[EMAIL PROTECTED]
>
> Thanks!
> Stephen VanDyke
>
> PS - aside from that, great language, I love PHP :)
>
> --------------------------------------------------------------------------
-
>
>
> Full Bug description available at: http://bugs.php.net/?id=10701
>
>
>



-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]

Reply via email to