# Trying to figure out apache/php/glibc issue?

**URL:** <https://forums.suse.com/t/trying-to-figure-out-apache-php-glibc-issue/32866>\
**Category:** SLES Configure-Administer\
**Created:** [August 31, 2018, 12:27am UTC](https://forums.suse.com/t/trying-to-figure-out-apache-php-glibc-issue/32866 "2018-08-31T00:27:27Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![skunkboy](https://avatars.discourse-cdn.com/v4/letter/s/df788c/32.png) [@skunkboy](https://forums.suse.com/u/skunkboy)\
**Post date:** [August 31, 2018, 12:27am UTC](https://forums.suse.com/t/trying-to-figure-out-apache-php-glibc-issue/32866/1 "2018-08-31T00:27:27Z")

</div>

Hello,

I’m the system admin not the php programmer. So I’m trying to figure out why the following is happening, any advice is welcome.

apache 2.4.24, php 7.1.21 ( same issues with 7.1.20 ) on SLES 12SP3

In the apache error logs are

[Thu Aug 30 15:54:10.382970 2018] [core:notice] [pid 23584:tid 140287659091712] AH00052: child pid 23673 exit signal Segmentation fault (11)  
[Thu Aug 30 15:56:40.538330 2018] [core:notice] [pid 23584:tid 140287659091712] AH00052: child pid 25857 exit signal Segmentation fault (11)

Got a gdb trace back after one of dumps, I’m trying to figure out if it is tracing an issue back to glibc or the fault is more likely in php? I haven’t used gdb much.  
And no we haven’t been able to track this back to a specific page or reproduce it so far, seems fairly random. Had to start trying to get some advice somewhere and  
decided to do it here…

Thread 2.11 “httpd” received signal SIGSEGV, Segmentation fault.  
[Switching to Thread 0x7fa8587f8700 (LWP 24508)]  
0x00007fa86c05b2b3 in \_\_strchr\_sse2 () from /lib64/libc.so.6  
(gdb) backtrace full  
#0 0x00007fa86c05b2b3 in \_\_strchr\_sse2 () from /lib64/libc.so.6  
No symbol table info available.  
#1 0x00007fa86c0110c8 in putenv () from /lib64/libc.so.6  
No symbol table info available.  
#2 0x00007fa8662d7832 in php\_putenv\_destructor (zv=)  
at /usr/local/src/php-7.1.20/ext/standard/basic\_functions.c:3435  
pe = 0x7fa81fad6ce0  
#3 0x00007fa8663f9c62 in zend\_hash\_destroy (ht=0x7fa83c06cff8)  
at /usr/local/src/php-7.1.20/Zend/zend\_hash.c:1246  
p = 0x7fa81fac5120  
end = 0x7fa81fac5200  
#4 0x00007fa8662d799c in zm\_deactivate\_basic (type=1, module\_number=33)  
at /usr/local/src/php-7.1.20/ext/standard/basic\_functions.c:3811  
No locals.  
#5 0x00007fa8663ef5fc in zend\_deactivate\_modules ()  
at /usr/local/src/php-7.1.20/Zend/zend\_API.c:2576  
module =   
p = 0x1b39c78  
\_\_orig\_bailout = 0x0  
\_\_bailout = {{\_\_jmpbuf = {140361256496980, -1307032077999214733,  
140361256496980, 140361074988808, 140361074987992,  
140361074988640, -1306969958583832717, -1306948530893426829},  
\_\_mask\_was\_saved = 0, \_\_saved\_mask = {\_\_val = {1, 1,  
—Type to continue, or q to quit—  
140360061812800, 1, 140361074987992, 140361252383656,  
140361242412498, 352120, 140361246690724, 140361256490324,  
140361246542378, 0, 0, 0, 0, 140361074988808}}}}  
#6 0x00007fa866377fb2 in php\_request\_shutdown (dummy=dummy@entry=0x0)  
at /usr/local/src/php-7.1.20/main/main.c:1876  
report\_memleaks = 1 ‘\001’  
#7 0x00007fa86649188f in php\_apache\_request\_dtor (r=)  
at /usr/local/src/php-7.1.20/sapi/apache2handler/sapi\_apache2.c:552  
No locals.  
#8 php\_handler (r=)  
at /usr/local/src/php-7.1.20/sapi/apache2handler/sapi\_apache2.c:724  
ctx = 0x7fa838013bf8  
conf =   
brigade = 0x7fa83808d448  
bucket =   
rv =   
parent\_req = 0x0  
#9 0x0000000000455850 in ap\_run\_handler (r=r@entry=0x7fa838007a60)  
at config.c:170  
pHook =   
n = 5  
rv = -1  
#10 0x0000000000455d99 in ap\_invoke\_handler (r=r@entry=0x7fa838007a60)  
—Type to continue, or q to quit—  
at config.c:444  
handler =   
p =   
result =   
old\_handler = 0x0  
ignore =   
#11 0x000000000046aa4c in ap\_internal\_redirect (new\_uri=,  
r=) at http\_request.c:791  
access\_status =   
new = 0x7fa838007a60  
#12 0x00007fa866f6225c in handler\_redirect (r=0x7fa838015ab0)  
at mod\_rewrite.c:5256  
No locals.  
#13 0x0000000000455850 in ap\_run\_handler (r=r@entry=0x7fa838015ab0)  
at config.c:170  
pHook =   
n = 4  
rv = -1  
#14 0x0000000000455d99 in ap\_invoke\_handler (r=r@entry=0x7fa838015ab0)  
at config.c:444  
handler =   
p =   
result =   
—Type to continue, or q to quit—  
old\_handler = 0x7fa866f6ae14 “redirect-handler”  
ignore =   
#15 0x000000000046b6da in ap\_process\_async\_request (r=0x7fa838015ab0)  
at http\_request.c:453  
access\_status = 0  
#16 0x0000000000467c51 in ap\_process\_http\_async\_connection (c=0x7fa85c03d708)  
at http\_core.c:154  
r = 0x7fa838015ab0  
cs = 0x7fa85c03d6d0  
#17 ap\_process\_http\_connection (c=0x7fa85c03d708) at http\_core.c:248  
No locals.  
#18 0x000000000045f380 in ap\_run\_process\_connection (c=c@entry=0x7fa85c03d708)  
at connection.c:42  
pHook =   
n = 2  
rv = -1  
#19 0x0000000000472dca in process\_socket (thd=,  
p=, sock=, cs=0x7fa85c03d660,  
my\_child\_num=, my\_thread\_num=)  
at event.c:1048  
c = 0x7fa85c03d708  
conn\_id =   
clogging =   
—Type to continue, or q to quit—  
rv =   
rc = 0  
#20 0x0000000000474348 in worker\_thread (thd=0x1983218, dummy=)  
at event.c:2122  
csd = 0x7fa85c03d460  
cs = 0x0  
te = 0x0  
ptrans = 0x7fa85c03d3d8  
ti =   
process\_slot = 0  
thread\_slot = 8  
rv =   
is\_idle = 0  
#21 0x00007fa86c58b724 in start\_thread () from /lib64/libpthread.so.0  
No symbol table info available.  
#22 0x00007fa86c0c6e8d in clone () from /lib64/libc.so.6  
No symbol table info available.

Thanks for any help or pointers,  
Matt

---

<div class="post-metadata">

**Author:** ![Jens-U](https://avatars.discourse-cdn.com/v4/letter/j/d78d45/32.png) [@Jens-U](https://forums.suse.com/u/Jens-U)\
**Post date:** [September 4, 2018, 4:30pm UTC](https://forums.suse.com/t/trying-to-figure-out-apache-php-glibc-issue/32866/2 "2018-09-04T16:30:05Z")

</div>

Hi Matt,

> Had to start trying to get some advice somewhere and decided to do it here…

judging from the stack trace and bug reports from PHP, it may be a problem using putenv, either wrongly (i. e. with an empty variable) or at all. As you seem to be running PHP in a multi-process environment, using putenv() may not be the best choice anyhow, so I’d start looking at replacing that.Which would be a job for the PHP programmer.

Regards,  
J
