FreeBSD 10, apache 2.4, php56 & Segmentation fault (11)

By | November 25, 2014

Error logs were filling up with these….

[core:notice] [pid 1282] AH00052: child pid 29796 exit signal Segmentation fault (11)

Web visitors where shown…

No data received

Unable to load the web page because the server sent no data.
Error code: ERR_EMPTY_RESPONSE

Tracked the issue down to the fact php5-extentions port was compiled with zip and / or zlib support.

Recompiles lang/php5-extention withouth zip & zlib support and removed old modules with…

cd/usr/ports/archivers/php56-zip && make deinstall
cd/usr/ports/archivers/php56-zlib && make deinstall

(later reinstalled zlib due to wordpress requiring it to unpack plugin updates, everything continued to work)

.. and 99% of things started working again. Still had one problem with the contact us pages on our site though, seems to be related to contact-form plugin

 

Update.

Tracked issue do use of imagepng in really-simple-captcha.php, line 146. Obviously not really-simple-captcha.php’s fault…

 

Used the following script to test further

<?php
 header('image/png');
 $img=imagecreatetruecolor(200, 30);
 $text_color=imagecolorallocate($img, 200, 200, 200);
 imagestring($img, 5, 5, 5, 'test', $text_color);
 imagepng($img);
 imagedestroy($img);
?>
Everytime the above script was called via a browser it would "Segmentation fault (11)" error.

Went back and recompiled /usr/ports/graphics/php56-gd (+T1lib, +TrueType, -JIS, -X11, -VPX) without success
Recompiled /usr/ports/graphics/png without APNG (-APNG, +PNGTEST) but didn't seem to make any difference.
Went back and recompiled again /usr/ports/graphics/php56-gd (+T1lib, +TrueType, -JIS, -X11, -VPX) and started to work.