#30405 [Com]: Parent: child process exited with status 4294967295 -- Restarting.
ID: 30405 Comment by: aaron at gwmicro dot com Reported By: joel at preacherboy dot net Status: Open Bug Type: Apache2 related Operating System: Windows 2003 PHP Version: 5.0.2 New Comment: I can consistenly reproduce this problem. [Wed Oct 20 14:08:43 2004] [notice] Parent: child process exited with status 4294967295 -- Restarting. Here's how we're duplicating it under Windows Server 2003, running Apache/2.0.52 (Win32) DAV/2 mod_ssl/2.0.52 OpenSSL/0.9.7d PHP/5.1.0-dev: The demo file is about 35MB, and if you cancel the download half-way through, you'll consistently get this error in the apache log, and the child restarting process will happen. The line right before the restart is: [Wed Oct 20 14:08:42 2004] [info] (OS 10054)An existing connection was forcibly closed by the remote host. : core_output_filter: writing data to the network I can duplicate this problem 100% of the time. Previous Comments: [2004-10-12 23:24:44] joel at preacherboy dot net Here's what you'll see in the \log\error_log for Apache2: [Mon Oct 11 09:35:20 2004] [notice] Parent: child process exited with status 4294967295 -- Restarting. [Mon Oct 11 09:35:22 2004] [notice] Parent: Created child process 4004 [Mon Oct 11 09:35:22 2004] [notice] Disabled use of AcceptEx() WinSock2 API [Mon Oct 11 09:35:23 2004] [notice] Child 4004: Child process is running [Mon Oct 11 09:35:23 2004] [notice] Child 4004: Acquired the start mutex. [Mon Oct 11 09:35:23 2004] [notice] Child 4004: Starting 250 worker threads. [Mon Oct 11 09:35:23 2004] [notice] Child 4004: Listening on port 443. [Mon Oct 11 09:35:23 2004] [notice] Child 4004: Listening on port 80. [Mon Oct 11 09:35:23 2004] [notice] Child 4004: Listening on port 80. After some more time, the above will loop. I see 2 other people have voted that they are able to reproduce the issue. Is there anything else you need to regress the bug? [2004-10-12 16:26:44] joel at preacherboy dot net I can't think what else I would need to do in explaining how to regress this bug. It happens quite easily. Have you even tried my suggestions? Do you need something else like my httpd.conf to get started? This bug seems identical to what was mentioned in bug #25570. [2004-10-12 09:07:39] [EMAIL PROTECTED] I don't know what details I want, it's that Windows is simply impossible to debug. You'll have to come up with some really good pointers, otherwise we can just as well delete this bugreport. [2004-10-12 08:41:40] joel at preacherboy dot net You're going to have to ask what details you're looking for. I've already read that page. There aren't any specific steps to get this error to occur and existing information is available in the links I provided,but I'll do my best to make this a step-by-step process 1. Install Apache 2.0.52 / PHP 5.0.2 on Windows 2003. 2. Create a website of pages linking each other. 3. View these pages, clicking through links like crazy, using another system. After a few clicks, Apache2 will restart itself. [2004-10-12 08:37:48] [EMAIL PROTECTED] Not enough information was provided for us to be able to handle this bug. Please re-read the instructions at http://bugs.php.net/how-to-report.php If you can provide more information, feel free to add it to this bug and change the status back to "Open". Thank you for your interest in PHP. The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/30405 -- Edit this bug report at http://bugs.php.net/?id=30405&edit=1
#25570 [Com]: Some requests cause Apache to crash/restart
ID: 25570 Comment by: aaron at gwmicro dot com Reported By: robert at profundis dot se Status: Feedback Bug Type: Apache2 related Operating System: WinXP SP1 PHP Version: 5CVS-2004-04-22 (dev) Assigned To: jorton New Comment: Sorry about the double post in 30405. With the latest 5.1.X CVS build (Oct 21, 2004 18:30 GMT), this problem has been resolved for me. Thank you. Previous Comments: [2004-10-21 16:35:24] joel at preacherboy dot net So what version of 5.x will have this fix? The latest public release is 5.0.2, which is affected by this problem. [2004-10-21 11:31:50] [EMAIL PROTECTED] If you test the patch (it should apply to 4.3.x just the same) and tell me it works, yes! [2004-10-21 11:00:05] robert at profundis dot se Will the fix be applied to 4.x.x as well? I'm not really ready for the leap to v5 for production just yet. [2004-10-21 10:48:20] [EMAIL PROTECTED] Fixing Version/OS/Summary... [2004-10-21 10:28:17] [EMAIL PROTECTED] Please try using this CVS snapshot: http://snaps.php.net/php5-latest.tar.gz For Windows: http://snaps.php.net/win32/php5-win32-latest.zip I've committed a possible fix for this to 5.0 and 5.1, please apply: http://cvs.apache.org/~jorton/php_abort.diff or wait for a 5.0-dev or 5.1-dev snapshot to show up with this applied. The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/25570 -- Edit this bug report at http://bugs.php.net/?id=25570&edit=1
#24416 [Com]: Apache2 won't start with PHP5 beta
ID: 24416 Comment by: aaron at gwmicro dot com Reported By: ldf13 at hotmail dot com Status: Bogus Bug Type: Apache2 related Operating System: Windows XP PHP Version: 5CVS-2003-06-30 (dev) New Comment: I too had been having this problem. Turns out that running PHP from the command line also yielded problems: php.exe - Unable To Locate Component This application has failed to start because iconv.dll was not found. Re-installing the application may fix this problem. Copying iconv.dll to the root of my PHP dir solved the problem. I also topped it off with the latest snapshot as well, and am now successfully running 5.0.0b2-dev with Apache 2.0.46. I hope this helps someone, as trying to solve this problem was starting to get a bit frustrating. Aaron Previous Comments: [2003-07-01 11:58:16] nuno at dbforums dot com Yep, same thing here, Apache2.0.46, PHP5.0.0B1, and no matter what I do I always get: "Syntax error on line 169 of C:/Apache2/conf/httpd.conf: Cannot load C:/Apache2/modules/php4apache2.dll into server: The specified module could not be found" I'm forced to conclude that PHP5 does not work with Windows :( [2003-06-30 12:16:58] [EMAIL PROTECTED] php4_module -> php5_module [2003-06-30 12:04:25] ldf13 at hotmail dot com Description: So far I could replace a PHP version by copying the .dll files to the modules directory and that was it. This seems to be history in the PHP5 version because it won't start. I am using Apache2.0.46 on WindowsXP with the binary set of PHP5 .. Worst part is... no clue where to find some info on this. Reproduce code: --- these two lines are added to the httpd.conf file LoadModule php4_module modules/php4apache2.dll AddType application/x-httpd-php .php and php4apache2.dll & php4ts.dll are copied to the modules directory I do not use a php.ini file Expected result: a running webserver :) .. duh! Actual result: -- gives an error with no clue in the error file -- Edit this bug report at http://bugs.php.net/?id=24416&edit=1
#24416 [Com]: Apache2 won't start with PHP5 beta
ID: 24416 Comment by: aaron at gwmicro dot com Reported By: ldf13 at hotmail dot com Status: Bogus Bug Type: Apache2 related Operating System: Windows XP PHP Version: 5CVS-2003-06-30 (dev) New Comment: I take back my comments about getting this working, sort of. I still have one machine running Apache2 2.0.46, and PHP 5.0.0b2-dev successfully. I have another machine, however, running Apache2 2.0.46 and PHP 5.0.0b2-dev unsuccessfully. What bothers me is that the paths on both systems are EXACTLY the same. So I copied both the Apache2 dir, and the PHP dir to the second machine thinking that, since everything is already working, it ought to just work on the second machine. Foolish me: Cannot load D:/PHP/sapi/php4apache2.dll into server: The specified procedure could not be found. "Specified procedure could not be found." Hmmm...that is certainly different from the original error of "The specified module could not be found." We're finding the module, but we're not finding the procedure, which makes me think that the php4apache2.dll ain't the right one for this Apache (I remember fighting this battle with the PHP 4.3.X versions), but it works perfectly on the first machine, and the directories are identical! Color me confused... Both machines are Windows XP Pro, Athlon 1.4Ghz, 512MB RAM, practically identical in every way, including the software that is installed. Aaron Previous Comments: [2003-07-01 13:37:53] nuno at dbforums dot com Please forgive my ignorance but, how's that suppose to help? [quote] "Syntax error on line 169 of C:/Apache2/conf/httpd.conf: Cannot load C:/Apache2/modules/php4apache2.dll into server: The specified module could not be found" [/quote] Line 169: LoadModule php5_module modules/php4apache2.dll Can you enlighten me further about this error and how to resolve it? Thank you. [2003-07-01 13:24:36] [EMAIL PROTECTED] See the error message Apache gives? Try READING it. [2003-07-01 13:22:58] nuno at dbforums dot com You are correct, iconv.dll was in fact missing...but still no dice, Apache 2.0.46 simply refuses to start. Now testing with http://snaps.php.net/win32/php5-win32-latest.zip and nothing, same error message over and over again. "Syntax error on line 169 of C:/Apache2/conf/httpd.conf: Cannot load C:/Apache2/modules/php4apache2.dll into server: The specified module could not be found" SPECS: OS: Win2K Apache Ver: Apache 2.0.46 PHP Ver: php5-win32-latest //httpd.conf . . LoadModule php5_module c:/php/sapi/php4apache2.dll AddType application/x-httpd-php .php // php.ini file in the C:/WINNT directory. php4ts.dll file in the C:/WINNT/System32 directory. php4apache2.dll is definitely in C:/php/sapi/ What am I missing? :( ---------------- [2003-07-01 12:26:24] aaron at gwmicro dot com I too had been having this problem. Turns out that running PHP from the command line also yielded problems: php.exe - Unable To Locate Component This application has failed to start because iconv.dll was not found. Re-installing the application may fix this problem. Copying iconv.dll to the root of my PHP dir solved the problem. I also topped it off with the latest snapshot as well, and am now successfully running 5.0.0b2-dev with Apache 2.0.46. I hope this helps someone, as trying to solve this problem was starting to get a bit frustrating. Aaron [2003-07-01 11:58:16] nuno at dbforums dot com Yep, same thing here, Apache2.0.46, PHP5.0.0B1, and no matter what I do I always get: "Syntax error on line 169 of C:/Apache2/conf/httpd.conf: Cannot load C:/Apache2/modules/php4apache2.dll into server: The specified module could not be found" I'm forced to conclude that PHP5 does not work with Windows :( The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/24416 -- Edit this bug report at http://bugs.php.net/?id=24416&edit=1
#24416 [Com]: Apache2 won't start with PHP5 beta
ID: 24416 Comment by: aaron at gwmicro dot com Reported By: ldf13 at hotmail dot com Status: Bogus Bug Type: Apache2 related Operating System: Windows XP PHP Version: 5CVS-2003-06-30 (dev) New Comment: nuno, Would you care to enlighten the rest of us (me)? Aaron Previous Comments: [2003-07-01 22:06:05] nuno at dbforums dot com Thankfully to strace (an amazing little tool BTW) and install.txt (duh), I finally managed to install PHP5 with Apache2.0.46. Therefore, I need to eat my words and I would like to take this opportunity to present my sincere apologies to the PHP Team. To sniper, a special thank you for his support. Best wishes, nuno :) [2003-07-01 16:37:55] aaron at gwmicro dot com I take back my comments about getting this working, sort of. I still have one machine running Apache2 2.0.46, and PHP 5.0.0b2-dev successfully. I have another machine, however, running Apache2 2.0.46 and PHP 5.0.0b2-dev unsuccessfully. What bothers me is that the paths on both systems are EXACTLY the same. So I copied both the Apache2 dir, and the PHP dir to the second machine thinking that, since everything is already working, it ought to just work on the second machine. Foolish me: Cannot load D:/PHP/sapi/php4apache2.dll into server: The specified procedure could not be found. "Specified procedure could not be found." Hmmm...that is certainly different from the original error of "The specified module could not be found." We're finding the module, but we're not finding the procedure, which makes me think that the php4apache2.dll ain't the right one for this Apache (I remember fighting this battle with the PHP 4.3.X versions), but it works perfectly on the first machine, and the directories are identical! Color me confused... Both machines are Windows XP Pro, Athlon 1.4Ghz, 512MB RAM, practically identical in every way, including the software that is installed. Aaron [2003-07-01 13:37:53] nuno at dbforums dot com Please forgive my ignorance but, how's that suppose to help? [quote] "Syntax error on line 169 of C:/Apache2/conf/httpd.conf: Cannot load C:/Apache2/modules/php4apache2.dll into server: The specified module could not be found" [/quote] Line 169: LoadModule php5_module modules/php4apache2.dll Can you enlighten me further about this error and how to resolve it? Thank you. [2003-07-01 13:24:36] [EMAIL PROTECTED] See the error message Apache gives? Try READING it. [2003-07-01 13:22:58] nuno at dbforums dot com You are correct, iconv.dll was in fact missing...but still no dice, Apache 2.0.46 simply refuses to start. Now testing with http://snaps.php.net/win32/php5-win32-latest.zip and nothing, same error message over and over again. "Syntax error on line 169 of C:/Apache2/conf/httpd.conf: Cannot load C:/Apache2/modules/php4apache2.dll into server: The specified module could not be found" SPECS: OS: Win2K Apache Ver: Apache 2.0.46 PHP Ver: php5-win32-latest //httpd.conf . . LoadModule php5_module c:/php/sapi/php4apache2.dll AddType application/x-httpd-php .php // php.ini file in the C:/WINNT directory. php4ts.dll file in the C:/WINNT/System32 directory. php4apache2.dll is definitely in C:/php/sapi/ What am I missing? :( The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/24416 -- Edit this bug report at http://bugs.php.net/?id=24416&edit=1
#24416 [Com]: Apache2 won't start with PHP5 beta
ID: 24416 Comment by: aaron at gwmicro dot com Reported By: ldf13 at hotmail dot com Status: Bogus Bug Type: Apache2 related Operating System: Windows XP PHP Version: 5CVS-2003-06-30 (dev) New Comment: nuno, Thanks for the info. What you noted still didn't work for me, but it did prompt me to keep trying. Finally, I had success. Here's what I had to do: copy x:/php/php4ts.dll to x:/php/sapi copy x:/php/dlls/iconv.dll to x:/php Plus the obligatory: LoadModule php5_module c:/php/sapi/php4apache2.dll AddType application/x-httpd-php .php A little frustrating that there appear so many different solutions in terms of where to copy what (unless we -- you, me, and a host of Google groupers -- keep mistyping things). But at least it works for now. Thanks for your help, Aaron Previous Comments: [2003-07-02 12:54:49] nuno at dbforums dot com Sure Aaron, copy the files: php4ts.dll iconv.dll to c:/php/sapi/ Then simply add this to your httpd.conf file: LoadModule php5_module c:/php/sapi/php4apache2.dll AddType application/x-httpd-php .php Once that's all done, restart Apache. :) NET STOP APACHE2 NET START APACHE2 [2003-07-02 09:59:31] aaron at gwmicro dot com nuno, Would you care to enlighten the rest of us (me)? Aaron [2003-07-01 22:06:05] nuno at dbforums dot com Thankfully to strace (an amazing little tool BTW) and install.txt (duh), I finally managed to install PHP5 with Apache2.0.46. Therefore, I need to eat my words and I would like to take this opportunity to present my sincere apologies to the PHP Team. To sniper, a special thank you for his support. Best wishes, nuno :) [2003-07-01 16:37:55] aaron at gwmicro dot com I take back my comments about getting this working, sort of. I still have one machine running Apache2 2.0.46, and PHP 5.0.0b2-dev successfully. I have another machine, however, running Apache2 2.0.46 and PHP 5.0.0b2-dev unsuccessfully. What bothers me is that the paths on both systems are EXACTLY the same. So I copied both the Apache2 dir, and the PHP dir to the second machine thinking that, since everything is already working, it ought to just work on the second machine. Foolish me: Cannot load D:/PHP/sapi/php4apache2.dll into server: The specified procedure could not be found. "Specified procedure could not be found." Hmmm...that is certainly different from the original error of "The specified module could not be found." We're finding the module, but we're not finding the procedure, which makes me think that the php4apache2.dll ain't the right one for this Apache (I remember fighting this battle with the PHP 4.3.X versions), but it works perfectly on the first machine, and the directories are identical! Color me confused... Both machines are Windows XP Pro, Athlon 1.4Ghz, 512MB RAM, practically identical in every way, including the software that is installed. Aaron [2003-07-01 13:37:53] nuno at dbforums dot com Please forgive my ignorance but, how's that suppose to help? [quote] "Syntax error on line 169 of C:/Apache2/conf/httpd.conf: Cannot load C:/Apache2/modules/php4apache2.dll into server: The specified module could not be found" [/quote] Line 169: LoadModule php5_module modules/php4apache2.dll Can you enlighten me further about this error and how to resolve it? Thank you. The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/24416 -- Edit this bug report at http://bugs.php.net/?id=24416&edit=1
#43327 [Com]: wrong return value from mail(), if sendmail_path is wrong
ID: 43327 Comment by: aaron at gwmicro dot com Reported By: carsten_sttgt at gmx dot de Status: Open Bug Type: Mail related Operating System: Windows_NT PHP Version: 5.2.5 New Comment: I have confirmed this issue under a Windows Server 2003 environment, and it continues to exist in 5.3 dev. Using the imap_mail.dll and changing all references from mail() to imap_mail() seems to resolve the problem, although changing that reference everywhere is not a reasonable solution for most everyone (including us). Previous Comments: [2007-11-19 14:40:55] [EMAIL PROTECTED] Propably due to wrong usage of popen() and not VCWD_POPEN(). I don't have win32 dev environment setup so someone else should deal with this. [2007-11-19 13:46:20] carsten_sttgt at gmx dot de > Are you sure the path is actually set? Try this: Yes: | D:\PHP>php -d sendmail_path=/foo/bar -r \ | "var_dump(ini_get('sendmail_path'));" | string(8) "/foo/bar" | |D:\PHP> Of course, setting "sendmail_path" from the command line was just for you. The same happens if I set a wrong sendmail_path in "php.ini". And as I've written above: mail() returns also TRUE, if "sendmail_path" is correct, but the sendmail binary exit with an error code != 0. [2007-11-19 13:24:48] [EMAIL PROTECTED] Are you sure the path is actually set? Try this: php -d sendmail_path=/foo/bar -r 'var_dump(ini_get("sendmail_path"));' [2007-11-19 01:40:08] carsten_sttgt at gmx dot de Description: Hello, on Windows, mail() allways returns true, regardless if sendmail_path is wrong, or sendmail returns an error code. Regards, Carsten Reproduce code: --- Expected result: Like on *nix: | % ./php -d sendmail_path=/foo/bar test.php | /foo/bar: not found | bool(false) | % Actual result: -- On Windows: | D:\PHP>php -d sendmail_path=/foo/bar test.php | bool(true) | | D:\PHP> -- Edit this bug report at http://bugs.php.net/?id=43327&edit=1
[PHP-BUG] Bug #55510 [NEW]: $_FILES 'name' missing first character after upload.
From: Operating system: Windows Server 2008 R2 PHP version: 5.3.8 Package: Filesystem function related Bug Type: Bug Bug description:$_FILES 'name' missing first character after upload. Description: After uploading a file using a multipart/form-data HTML form, the resulting file name is missing the initial character (i.e. readme.txt becomes eadme.txt). Server: Apache/2.2.19 (Win32) mod_ssl/2.2.19 OpenSSL/1.0.0d PHP/5.3.8 Test script: --- File: array(1) { ["filename"]=> array(5) { ["name"]=> string(10) "eadme.txt" ["type"]=> string(10) "text/plain" ["tmp_name"]=> string(31) "C:\temp\file_upload\php7D44.tmp" ["error"]=> int(0) ["size"]=> int(3420) } } Expected result: $_FILES['filename']['name'] should be intact rather than missing the first character. ["name"]=> string(10) "readme.txt" Actual result: -- $_FILES['filename']['name'] is missing the first character: ["name"]=> string(10) "eadme.txt" -- Edit bug report at https://bugs.php.net/bug.php?id=55510&edit=1 -- Try a snapshot (PHP 5.4): https://bugs.php.net/fix.php?id=55510&r=trysnapshot54 Try a snapshot (PHP 5.3): https://bugs.php.net/fix.php?id=55510&r=trysnapshot53 Try a snapshot (trunk): https://bugs.php.net/fix.php?id=55510&r=trysnapshottrunk Fixed in SVN: https://bugs.php.net/fix.php?id=55510&r=fixed Fixed in SVN and need be documented: https://bugs.php.net/fix.php?id=55510&r=needdocs Fixed in release: https://bugs.php.net/fix.php?id=55510&r=alreadyfixed Need backtrace: https://bugs.php.net/fix.php?id=55510&r=needtrace Need Reproduce Script: https://bugs.php.net/fix.php?id=55510&r=needscript Try newer version: https://bugs.php.net/fix.php?id=55510&r=oldversion Not developer issue: https://bugs.php.net/fix.php?id=55510&r=support Expected behavior: https://bugs.php.net/fix.php?id=55510&r=notwrong Not enough info: https://bugs.php.net/fix.php?id=55510&r=notenoughinfo Submitted twice: https://bugs.php.net/fix.php?id=55510&r=submittedtwice register_globals: https://bugs.php.net/fix.php?id=55510&r=globals PHP 4 support discontinued: https://bugs.php.net/fix.php?id=55510&r=php4 Daylight Savings:https://bugs.php.net/fix.php?id=55510&r=dst IIS Stability: https://bugs.php.net/fix.php?id=55510&r=isapi Install GNU Sed: https://bugs.php.net/fix.php?id=55510&r=gnused Floating point limitations: https://bugs.php.net/fix.php?id=55510&r=float No Zend Extensions: https://bugs.php.net/fix.php?id=55510&r=nozend MySQL Configuration Error: https://bugs.php.net/fix.php?id=55510&r=mysqlcfg
Bug #55510 [Com]: $_FILES 'name' missing first character after upload.
Edit report at https://bugs.php.net/bug.php?id=55510&edit=1 ID: 55510 Comment by: aaron at gwmicro dot com Reported by:aaron at gwmicro dot com Summary:$_FILES 'name' missing first character after upload. Status: Open Type: Bug Package:Filesystem function related Operating System: Windows Server 2008 R2 PHP Version:5.3.8 Block user comment: N Private report: N New Comment: While I'm not enamored with the idea of running a beta in production, this problem appears to be resolved in 5.4.0beta1-dev. Previous Comments: [2011-08-25 19:36:54] aaron at gwmicro dot com Description: After uploading a file using a multipart/form-data HTML form, the resulting file name is missing the initial character (i.e. readme.txt becomes eadme.txt). Server: Apache/2.2.19 (Win32) mod_ssl/2.2.19 OpenSSL/1.0.0d PHP/5.3.8 Test script: --- File: array(1) { ["filename"]=> array(5) { ["name"]=> string(10) "eadme.txt" ["type"]=> string(10) "text/plain" ["tmp_name"]=> string(31) "C:\temp\file_upload\php7D44.tmp" ["error"]=> int(0) ["size"]=> int(3420) } } Expected result: $_FILES['filename']['name'] should be intact rather than missing the first character. ["name"]=> string(10) "readme.txt" Actual result: -- $_FILES['filename']['name'] is missing the first character: ["name"]=> string(10) "eadme.txt" -- Edit this bug report at https://bugs.php.net/bug.php?id=55510&edit=1
Bug #55510 [Opn]: $_FILES 'name' missing first character after upload.
Edit report at https://bugs.php.net/bug.php?id=55510&edit=1 ID: 55510 User updated by:aaron at gwmicro dot com Reported by:aaron at gwmicro dot com Summary:$_FILES 'name' missing first character after upload. Status: Open Type: Bug Package:Filesystem function related Operating System: Windows Server 2008 R2 PHP Version:5.3.8 Block user comment: N Private report: N New Comment: Yes, I will attempt to get this information to you. I can say that we were using 5.2.13 without incident prior to updating to 5.3.8. After updating to 5.3.8, we were notified by users that they could no longer download files that they were successfully uploading. That was when I determined the missing first character. Because we didn't want to go backward, I put on the 5.4 version, and the problem went away. Note that no changes were made in the PHP source during the process of changing versions. I will try to back all that with the requested data. Previous Comments: [2011-08-26 19:02:04] v-mafick at microsoft dot com I've setup Apache 2.2.19 and PHP 5.3.8 (though not with mod_ssl) and have run the test script you provided, but it doesn't produce the problem you reported (it works fine). In your report, $_FILES['filename']['name'] reports the length of the string as 10, even though only 9 characters are displayed. Is it possible that somewhere in your program you're converting between charsets or mangling the filename. Also, could you provide a packet capture of the network traffic between your web browser and your web application. You can do this with Wireshark (Windows/Linux) or NetMon (Windows). -------------------- [2011-08-25 19:46:39] aaron at gwmicro dot com While I'm not enamored with the idea of running a beta in production, this problem appears to be resolved in 5.4.0beta1-dev. ---------------- [2011-08-25 19:36:54] aaron at gwmicro dot com Description: After uploading a file using a multipart/form-data HTML form, the resulting file name is missing the initial character (i.e. readme.txt becomes eadme.txt). Server: Apache/2.2.19 (Win32) mod_ssl/2.2.19 OpenSSL/1.0.0d PHP/5.3.8 Test script: --- File: array(1) { ["filename"]=> array(5) { ["name"]=> string(10) "eadme.txt" ["type"]=> string(10) "text/plain" ["tmp_name"]=> string(31) "C:\temp\file_upload\php7D44.tmp" ["error"]=> int(0) ["size"]=> int(3420) } } Expected result: $_FILES['filename']['name'] should be intact rather than missing the first character. ["name"]=> string(10) "readme.txt" Actual result: -- $_FILES['filename']['name'] is missing the first character: ["name"]=> string(10) "eadme.txt" -- Edit this bug report at https://bugs.php.net/bug.php?id=55510&edit=1
Bug #55510 [Com]: $_FILES 'name' missing first character after upload.
Edit report at https://bugs.php.net/bug.php?id=55510&edit=1 ID: 55510 Comment by: aaron at gwmicro dot com Reported by:aaron at gwmicro dot com Summary:$_FILES 'name' missing first character after upload. Status: Feedback Type: Bug Package:Filesystem function related Operating System: Windows Server 2008 R2 PHP Version:5.3.8 Block user comment: N Private report: N New Comment: Here are the capture contents using Wireshark and PHP 5.3.8: No. TimeSourceDestination Protocol Length Info 1203 7.25209310.0.0.251184.18.147.3 HTTP 986 POST /private/aaron/filename.php HTTP/1.1 (text/plain) Frame 1203: 986 bytes on wire (7888 bits), 986 bytes captured (7888 bits) Ethernet II, Src: AsustekC_8e:2f:bb (00:26:18:8e:2f:bb), Dst: 3com_49:bb:06 (00:01:02:49:bb:06) Internet Protocol Version 4, Src: 10.0.0.251 (10.0.0.251), Dst: 184.18.147.3 (184.18.147.3) Transmission Control Protocol, Src Port: 65260 (65260), Dst Port: http (80), Seq: 1, Ack: 1, Len: 932 Hypertext Transfer Protocol MIME Multipart Media Encapsulation, Type: multipart/form-data, Boundary: "---9503744825200" [Type: multipart/form-data] First boundary: -9503744825200\r\n Encapsulated multipart part: (text/plain) Content-Disposition: form-data; name="filename"; filename="readme.txt"\r\n Content-Type: text/plain\r\n\r\n Line-based text data: text/plain Hello! This is a test. Last boundary: \r\n-9503744825200--\r\n No. TimeSourceDestination Protocol Length Info 1205 7.25278210.0.0.1 10.0.0.251HTTP 986 POST /private/aaron/filename.php HTTP/1.1 (text/plain) Frame 1205: 986 bytes on wire (7888 bits), 986 bytes captured (7888 bits) Ethernet II, Src: 3com_49:bb:06 (00:01:02:49:bb:06), Dst: AsustekC_8e:2f:bb (00:26:18:8e:2f:bb) Internet Protocol Version 4, Src: 10.0.0.1 (10.0.0.1), Dst: 10.0.0.251 (10.0.0.251) Transmission Control Protocol, Src Port: 65260 (65260), Dst Port: http (80), Seq: 1, Ack: 1, Len: 932 Hypertext Transfer Protocol MIME Multipart Media Encapsulation, Type: multipart/form-data, Boundary: "---9503744825200" [Type: multipart/form-data] First boundary: -9503744825200\r\n Encapsulated multipart part: (text/plain) Content-Disposition: form-data; name="filename"; filename="readme.txt"\r\n Content-Type: text/plain\r\n\r\n Line-based text data: text/plain Hello! This is a test. Last boundary: \r\n-9503744825200--\r\n Previous Comments: [2011-08-26 23:02:34] johan...@php.net Keeping state at "Feedback" until data requested by mafick is provided. -------------------- [2011-08-26 20:46:53] aaron at gwmicro dot com Yes, I will attempt to get this information to you. I can say that we were using 5.2.13 without incident prior to updating to 5.3.8. After updating to 5.3.8, we were notified by users that they could no longer download files that they were successfully uploading. That was when I determined the missing first character. Because we didn't want to go backward, I put on the 5.4 version, and the problem went away. Note that no changes were made in the PHP source during the process of changing versions. I will try to back all that with the requested data. [2011-08-26 19:02:04] v-mafick at microsoft dot com I've setup Apache 2.2.19 and PHP 5.3.8 (though not with mod_ssl) and have run the test script you provided, but it doesn't produce the problem you reported (it works fine). In your report, $_FILES['filename']['name'] reports the length of the string as 10, even though only 9 characters are displayed. Is it possible that somewhere in your program you're converting between charsets or mangling the filename. Also, could you provide a packet capture of the network traffic between your web browser and your web application. You can do this with Wireshark (Windows/Linux) or NetMon (Windows). [2011-08-25 19:46:39] aaron at gwmicro dot com While I'm not enamored with the idea of running a beta in production, this problem appears to be resolved in 5.4.0beta1-dev. [2011-08-25 19:36:54] aaron at gwmicro dot com Description:
Bug #55510 [Com]: $_FILES 'name' missing first character after upload.
Edit report at https://bugs.php.net/bug.php?id=55510&edit=1 ID: 55510 Comment by: aaron at gwmicro dot com Reported by:aaron at gwmicro dot com Summary:$_FILES 'name' missing first character after upload. Status: Feedback Type: Bug Package:Filesystem function related Operating System: Windows Server 2008 R2 PHP Version:5.3.8 Block user comment: N Private report: N New Comment: I started going back version by version from 5.3.8 to see where the problem started, and it seems to have begun with 5.3.7, as 5.3.6 works correctly. Once again, I'm just replacing PHP builds -- I'm not modifying any else. With 5.3.6, I get back what I would expect: array(1) { ["filename"]=> array(5) { ["name"]=> string(10) "readme.txt" ["type"]=> string(10) "text/plain" ["tmp_name"]=> string(31) "C:\temp\file_upload\php594F.tmp" ["error"]=> int(0) ["size"]=> int(22) } } With 5.3.7 and 5.3.8, I get back the missing first letter: array(1) { ["filename"]=> array(5) { ["name"]=> string(10) "eadme.txt" ["type"]=> string(10) "text/plain" ["tmp_name"]=> string(31) "C:\temp\file_upload\php594F.tmp" ["error"]=> int(0) ["size"]=> int(22) } } With 5.4.beta1-dev, I'm back to getting everything that I expect: array(1) { ["filename"]=> array(5) { ["name"]=> string(10) "readme.txt" ["type"]=> string(10) "text/plain" ["tmp_name"]=> string(31) "C:\temp\file_upload\php594F.tmp" ["error"]=> int(0) ["size"]=> int(22) } } Previous Comments: [2011-08-28 17:21:37] aaron at gwmicro dot com Here are the capture contents using Wireshark and PHP 5.3.8: No. TimeSourceDestination Protocol Length Info 1203 7.25209310.0.0.251184.18.147.3 HTTP 986 POST /private/aaron/filename.php HTTP/1.1 (text/plain) Frame 1203: 986 bytes on wire (7888 bits), 986 bytes captured (7888 bits) Ethernet II, Src: AsustekC_8e:2f:bb (00:26:18:8e:2f:bb), Dst: 3com_49:bb:06 (00:01:02:49:bb:06) Internet Protocol Version 4, Src: 10.0.0.251 (10.0.0.251), Dst: 184.18.147.3 (184.18.147.3) Transmission Control Protocol, Src Port: 65260 (65260), Dst Port: http (80), Seq: 1, Ack: 1, Len: 932 Hypertext Transfer Protocol MIME Multipart Media Encapsulation, Type: multipart/form-data, Boundary: "---9503744825200" [Type: multipart/form-data] First boundary: -9503744825200\r\n Encapsulated multipart part: (text/plain) Content-Disposition: form-data; name="filename"; filename="readme.txt"\r\n Content-Type: text/plain\r\n\r\n Line-based text data: text/plain Hello! This is a test. Last boundary: \r\n-9503744825200--\r\n No. TimeSourceDestination Protocol Length Info 1205 7.25278210.0.0.1 10.0.0.251HTTP 986 POST /private/aaron/filename.php HTTP/1.1 (text/plain) Frame 1205: 986 bytes on wire (7888 bits), 986 bytes captured (7888 bits) Ethernet II, Src: 3com_49:bb:06 (00:01:02:49:bb:06), Dst: AsustekC_8e:2f:bb (00:26:18:8e:2f:bb) Internet Protocol Version 4, Src: 10.0.0.1 (10.0.0.1), Dst: 10.0.0.251 (10.0.0.251) Transmission Control Protocol, Src Port: 65260 (65260), Dst Port: http (80), Seq: 1, Ack: 1, Len: 932 Hypertext Transfer Protocol MIME Multipart Media Encapsulation, Type: multipart/form-data, Boundary: "---9503744825200" [Type: multipart/form-data] First boundary: -9503744825200\r\n Encapsulated multipart part: (text/plain) Content-Disposition: form-data; name="filename"; filename="readme.txt"\r\n Content-Type: text/plain\r\n\r\n Line-based text data: text/plain Hello! This is a test. Last boundary: \r\n-9503744825200--\r\n [2011-08-26 23:02:34] johan...@php.net Keeping state at "Feedback" until data requested by mafick is provided. [2011-08-26 20:46:53] aaron at gwmicro dot com Yes, I will attempt to get this information to you. I can say that we were using 5.2.13 without incident prior to updating to 5.3.8. After updating to 5.3.8, we were notified by users that they could no longer download files that
Bug #55510 [Csd]: $_FILES 'name' missing first character after upload.
Edit report at https://bugs.php.net/bug.php?id=55510&edit=1 ID: 55510 User updated by:aaron at gwmicro dot com Reported by:aaron at gwmicro dot com Summary:$_FILES 'name' missing first character after upload. Status: Closed Type: Bug Package:Filesystem function related Operating System: Windows Server 2008 R2 PHP Version:5.3.8 Assigned To:arpad Block user comment: N Private report: N New Comment: I can confirm that this is fixed in 5.3 r315756. Thank you for the fix, and the quick turn around. Previous Comments: [2011-08-29 21:14:54] ar...@php.net Automatic comment from SVN on behalf of arpad Revision: http://svn.php.net/viewvc/?view=revision&revision=315743 Log: NEWS entry for fix #55510: $_FILES 'name' missing first character after upload [2011-08-29 21:12:00] ar...@php.net This bug has been fixed in SVN. Snapshots of the sources are packaged every three hours; this change will be in the next snapshot. You can grab the snapshot at http://snaps.php.net/. For Windows: http://windows.php.net/snapshots/ Thank you for the report, and for helping us make PHP better. [2011-08-29 21:10:56] ar...@php.net Automatic comment from SVN on behalf of arpad Revision: http://svn.php.net/viewvc/?view=revision&revision=315742 Log: fix #55510: $_FILES 'name' missing first character after upload [2011-08-29 02:46:06] ar...@php.net This bug is present on Windows with magic_quotes_gpc on. "s" is then always set and the change in r312103 means the leading char is skipped. [2011-08-29 02:43:24] ar...@php.net The following patch has been added/updated: Patch Name: fix-upload-win-mqgpc-bug-55510.patch Revision: 1314585804 URL: https://bugs.php.net/patch-display.php?bug=55510&patch=fix-upload-win-mqgpc-bug-55510.patch&revision=1314585804 The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at https://bugs.php.net/bug.php?id=55510 -- Edit this bug report at https://bugs.php.net/bug.php?id=55510&edit=1