Bug #17606 Updated: File upload fails on large files

From: Date: Thu, 06 Jun 2002 09:58:08 +0000
Subject: Bug #17606 Updated: File upload fails on large files
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-9616@lists.php.net to get a copy of this message
 ID:               17606
 Updated by:       luimarma@iti.upv.es
 Reported By:      luimarma@iti.upv.es
 Status:           Bogus
 Bug Type:         HTTP related
 Operating System: RedHat 7.3
 PHP Version:      4.2.1
 New Comment:

Yes, I am using php-4.2.1, I have been doing 
tests with very big files, my current parameters 
regarding uploads in php.ini are the following: 
	 memory_limit = 8M  
        post_max_size = 700M  
        file_uploads = On  
        upload_max_filesize = 700M  
        allow_url_fopen = On  
  
	When I try to upload a 400M file the web 
server starts writing it in the tmp dir but it 
also eats the system memory in the same amount so 
it can only handle properly one big upload at a 
time.


Previous Comments:
------------------------------------------------------------------------

[2002-06-06 05:36:44] sesser@php.net

Are you sure you are using php 4.2.1 ?

Since php 4.2.0, uploaded files aren't stored in memory.

------------------------------------------------------------------------

[2002-06-06 05:27:20] luimarma@iti.upv.es

A more detailed study of the problem led me to 
the next results. 
 Regardless de memory limit parameter the 
file completelly uploads. 
 It writes the file to the temp dir at disk 
as it loads the whole file into memory. 
 
I can accept that this is a known behaviour but I 
dont think that this is a good method if one is 
willing to implement a php-web based software 
repository. So the question is the following. 
Is there any cons about just writting the file in 
the tmp dir instead than duplicating the task 
into memory? 
Please, answer the question as I am evauating to 
do the hack myself. 
Thanks, 
Luis

------------------------------------------------------------------------

[2002-06-06 04:22:28] sander@php.net

Yeah, this is known behaviour. PHP reads the whole uploaded file into
memory before writing it to disk. Not a bug.

------------------------------------------------------------------------

[2002-06-05 07:55:28] luimarma@iti.upv.es

The first problem was solved (now memory_limit is 
used) as it was a configuration problem. 
 The second problem still stays. The upload eats 
system memory until memory_limit. If I am using a 
tmp dir why does this happen?

------------------------------------------------------------------------

[2002-06-05 07:09:49] luimarma@iti.upv.es

Upload fails regardless the value of memory_limit  
value.  
	I am using the following values for post 
file uploading: 
		memory_limit = 10M 
		post_max_size = 10M 
		file_uploads = On 
		upload_max_filesize = 10M 
		allow_url_fopen = On 
 
	Uploading anything bigger than a pair of 
megs fails 
 
	I have also tried with php-4.1.2-7 but then 
I could only upload till memory_limit value, and 
the upload tmp dir is only used when the whole 
file is in memory, so I can only upload files up 
to the amount of memory y have in the system. 
	 

------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=17606&edit=1



Thread (25 messages)

« previous php.bugs (#9616) next »