Bug #80385 [Opn]: Response data preceded by post data

From: Date: Sun, 22 Nov 2020 22:18:11 +0000
Subject: Bug #80385 [Opn]: Response data preceded by post data
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-230523@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=80385&edit=1

 ID:                 80385
 Updated by:         requinix@php.net
 Reported by:        306503207 at qq dot com
 Summary:            Response data preceded by post data
 Status:             Open
 Type:               Bug
 Package:            FPM related
 Operating System:   CentOS 7.4
 PHP Version:        7.2.34
 Block user comment: N
 Private report:     N

 New Comment:

I find it highly unlikely that PHP itself is randomly deciding to set auto_prepend_file to
php://input.
Compare the phpinfo outputs from the two different pages - are they perhaps using different php-fpm
pools or configurations?


Previous Comments:
------------------------------------------------------------------------
[2020-11-22 21:32:28] shoebox at dnbradio dot com

I thought perhaps this was caused by a misconfiguration but I found that even if I explicitly set
auto_prepend_file = none, the problem persists.

I have tested by creating a php script <?php phpinfo(); ?> and when I refresh the page over
and over I see the auto_prepend_file setting keeps changing back and forth from none to php://input

Here is a screen cap demonstrating the problem: https://www.dropbox.com/s/2kofxya97gmydpi/Nov-22-2020%2014-17-58.mp4?dl=0

------------------------------------------------------------------------
[2020-11-21 18:59:49] shoebox at dnbradio dot com

I can confirm the same issue is happening with my PHP-FPM instance. I have tested all the way up to
7.4 and the problem persists.

Steps to reproduce.
1. Create script called /test.php with code <?php echo "foo"; ?>
2. Make a POST request with post params bar=1 via x-www-form-urlencoded or raw to a PHP endpoint
over http.

Expected Result:
Response body should be "foo"

Actual Result:
Response body includes post params prepended to the HTTP response.
i.e. "bar=1test"

------------------------------------------------------------------------
[2020-11-21 09:33:24] 306503207 at qq dot com

When this happens, rockmongo installed on the same machine has the same problem. After restarting
PHP FPM, the response is correct. I met some people in a discussion group. Have you ever recorded
such a bug.

------------------------------------------------------------------------
[2020-11-20 07:18:43] requinix@php.net

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.



------------------------------------------------------------------------
[2020-11-20 04:23:41] 306503207 at qq dot com

Description:
------------
PHP-fpm runs stably, but after a period of time, the post data is automatically added to the
response data. After restarting PHP-fpm, the response is correct. After a period of time, this
problem occurs again


Expected result:
----------------
request data:page=1&rows=20
response data:
{response data}

Actual result:
--------------
page=1&rows=20{response data}


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



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


Thread (53 messages)

« previous php.bugs (#230523) next »