ID: 19263 Comment by: grall at mit dot edu Reported By: erwin at isiz dot com Status: Bogus Bug Type: Apache2 related Operating System: Solaris 8 PHP Version: 4CVS-2002-09-06 New Comment:
You are right erwin about this bug. The bug is in Apache 2.0.40 Possibly upgrading to a newer version will solve this. In any case, using the 'AddType application/x-httpd-php .php' didn't work for me, but instead I had to just insert into my httpd.conf: <Files *.php*> SetOutputFilter PHP SetInputFilter PHP LimitRequestBody 10240000 </Files> Some people report that you have to choose between one or the other, but in my case the second choice is the only one that works. Incidentally, if you are using MulitViews (as I am), using the <Files> approach, Multiviews no longer works. This is more of an Apache problem, but whatever, this thread is about that problem. Any suggestions? Previous Comments: ------------------------------------------------------------------------ [2003-10-02 21:07:44] josantri at hotmail dot com Same experience with RedHat 7.3, Apache 2.0.45 & PHP 4.3.1. The solution was disabling MIME type for PHP (I don't see new problems by now with this issue): #AddType application/x-httpd-php .php And now, leaving enabled filtering method, but be care with above example or you get a 'Syntax error [...]: AddInputFilter requires at least two arguments, input filter name (or ; delimited names) followed by one or more file extensions' when Apache2 is restarted. The code we use is: <Files *.php> AddInputFilter PHP .php AddOutputFilter PHP .php </Files> (Note the field naming the extension.) I'm not sure how enable filtering for *php.*, because AddInputFilter and AddOutputFilter seems not to accept wildcards on extensions (in files section definition is fine). Probably, independent definitions for each extension will work as well. Thanks to all of the above for help provided. ------------------------------------------------------------------------ [2003-07-01 02:35:35] php at gijs dot triple-it dot nl Hi, On my configuration (RedHat 9.0, Apache 2.0.40, php-4.2.2), I had to remove one of the following from the conf/httpd.conf or the /conf.d/php.conf AddType application/x-httpd-php .php4 .php3 .phtml .php Or <Files *.php*> SetOutputFilter PHP SetInputFilter PHP LimitRequestBody 10240000 </Files> Either of these functions will work, but together they screw up and create the problem as reported above. Good Luck! Gijs Zonneveld ------------------------------------------------------------------------ [2003-01-08 14:21:36] colreid at zasx dot com People are asking me what I did, so here it is: My Apache2 package has a directory which it uses for included files with httpd.conf (the path to this directory in my installation is /etc/httpd/conf.d). In there is a file called php.conf, and basically I just commented out the whole thing except for one line: LoadModule php4_module modules/libphp4.so This section here: #<Files *.php> # SetOutputFilter PHP # SetInputFilter PHP # LimitRequestBody 524288 #</Files> liked to munge uploads. Also, in the httpd.conf file I added the line: AddType application/x-httpd-php .php .html .htm .inc And that's it. I restarted apache and uploads decided to be nice. :) ------------------------------------------------------------------------ [2002-09-10 01:49:05] erwin at isiz dot com I've found the problem: don't add SetOutputFilter PHP and SetInputFilter PHP to the Apache config. Only use AddType application/x-httpd-php .php Grtz Erwin ------------------------------------------------------------------------ [2002-09-06 08:03:33] erwin at isiz dot com Hi, I've gave this the summary "huge POST data", because I've found two bugs, which are, in my opinion, related. The first one: If I upload a file using the file upload example from the php website, all I get are corrupted files. The resulting files are about two times bigger then the input files. The amount of bytes on the output varies a little bit. This does not happens with files of 10 Kb, but different files which vary from 60-120 Kb got corrupted. The second one: If I post text in a textarea, nothing goes wrong. But if I post a lot of text in a textarea, parts of the text is copied into the text itself. For instance, I copied the source of http://www.php.net (normal HTML source) in a textarea. Posted the data to info.php (this script only has the phpinfo() function, so I can see all data). The sourcecode of the php website is 376 lines long. The result is about 734 lines. This is around twice as big (The site looks really weird ;-)) Again, I think these two are related. They only occured in conjunction with Apache 2.0.40 (didn't test other Apache 2 releases). I'm sure that the bug is a PHP bug, because Perl code doesn't have this problem (but I rather use PHP) I did test it with php-4.2.2, which gave me the same results. PHP Configure line: './configure' '--with-mysql=/usr/local/mysql' '--enable-track-vars' '--with-openssl=/usr/local/ssl/' '--with-zlib' '--enable-ftp' '--with-gd' '--enable-gd-native-ttf' '--with-pdflib' '--with-jpeg-dir=/usr/local' '--with-png-dir=/usr/local' '--with-freetype-dir=/usr/local' '--prefix=/usr/local/httpd/php' '--with-zlib-dir=/usr' '--with-apxs2=/usr/local/httpd/bin/apxs' Greets, Erwin ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=19263&edit=1