Edit report at https://bugs.php.net/bug.php?id=68921&edit=1
ID: 68921
Comment by: andrey at kostin dot email
Reported by: public at grik dot net
Summary: segfault
Status: Open
Type: Bug
Package: Reproducible crash
Operating System: Cent OS 6
PHP Version: 5.6.6
Block user comment: N
Private report: N
New Comment:
Not fixed in 5.6.10:
curl -X POST http://example.com/script.php
WARNING: [pool www] child 12008 exited on signal 11 (SIGSEGV - core dumped) after 1166.718710
seconds from start
Previous Comments:
------------------------------------------------------------------------
[2015-06-03 21:59:32] andrey at kostin dot email
I experience the same problem with PHP 5.6.9 under Ubuntu 14.04 with no 3rd-party libraries
installed. Test script contains the following code:
<?php
echo 'ok';
?>
Request: curl --data "param1=value1" http://example.com/script.php
Response: ok
Request: curl --data "" http://example.com/script.php
Response:
<html>
<head><title>502 Bad Gateway</title></head>
<body bgcolor="white">
<center><h1>502 Bad Gateway</h1></center>
<hr><center>nginx/1.8.0</center>
</body>
</html>
PHP log contains the following:
[04-Jun-2015 00:54:07] WARNING: [pool www] child 16781 exited on signal 11 (SIGSEGV - core dumped)
after 45.570352 seconds from start
Setting always_populate_raw_post_data to -1 solves the problem.
------------------------------------------------------------------------
[2015-03-06 15:27:14] public at grik dot net
The t.php file is empty. The issue is not relevant to the content of a script.
I compiled 5.6 over 5.5 and did not update php.ini. In 5.5 the value for
always_populate_raw_post_data was "no", for in 5.6 it has to be "-1"
------------------------------------------------------------------------
[2015-03-06 14:41:45] laruence@php.net
please show us what the t.php 's contents is
------------------------------------------------------------------------
[2015-03-03 21:06:21] public at grik dot net
The problem is related to always_populate_raw_post_data option
When I edited php.ini and set always_populate_raw_post_data = -1 the segfault does not repeat.
Setting "always_populate_raw_post_data = off" as php.ini offers does not help, though.
Here is an php-fpm -i output when segfault occurs:
http://pastebin.com/z4uvtErx
here's the valgrind log
http://pastebin.com/RdNJZRX5
While I was making the valgrind log I saw errors:
[root@hotelfm hotelfm.ru]# valgrind --tool=memcheck --num-callers=30 --log-file=php.log
/usr/local/sbin/php-fpm -F -e
[03-Mar-2015 20:48:29] WARNING: [pool www] child 21793 said into stderr: "NOTICE: PHP message:
PHP Deprecated: Automatically populating $HTTP_RAW_POST_DATA is deprecated and will be removed in a
future version. To avoid this warning set 'always_populate_raw_post_data' to
'-1' in php.ini and use the php://input stream instead. in Unknown on line 0"
[03-Mar-2015 20:48:29] WARNING: [pool www] child 21793 said into stderr: "Unknown(0) :
Deprecated - Automatically populating $HTTP_RAW_POST_DATA is deprecated and will be removed in a
future version. To avoid this warning set 'always_populate_raw_post_data' to
'-1' in php.ini and use the php://input stream instead."
[03-Mar-2015 20:48:29] WARNING: [pool www] child 21793 said into stderr: ""
[03-Mar-2015 20:48:29] WARNING: [pool www] child 21793 said into stderr: "NOTICE: PHP message:
PHP Warning: Cannot modify header information - headers already sent in Unknown on line 0"
[03-Mar-2015 20:48:29] WARNING: [pool www] child 21793 said into stderr: "Unknown(0) : Warning
- Cannot modify header information - headers already sent"
[03-Mar-2015 20:48:29] WARNING: [pool www] child 21793 said into stderr: ""
[03-Mar-2015 20:48:30] WARNING: [pool www] child 21793 exited on signal 11 (SIGSEGV) after 18.506098
seconds from start
------------------------------------------------------------------------
[2015-03-03 20:23:31] aharvey@php.net
I can't reproduce this with 5.6.6 or the current PHP-5.6. Can you pastebin your phpinfo()
somewhere, please?
------------------------------------------------------------------------
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=68921
--
Edit this bug report at https://bugs.php.net/bug.php?id=68921&edit=1