Last played -

creating stuff

capture

conjure

create

connect

PHP 5.4 + suhosin = FAIL

  Please be aware that this post is in the Archived category, indicating that it is a post that was moved from the previous version of Digital Formula.  For this reason, some images may not display correctly and may affect your ability to view the complete content.

I apologise for any inconvenience this may cause, and invite you to make use of the contact form, if you would like to view images that may be missing from this article.

I recently modified my dev environment to allow PHP 5.4 apps, something that involved adding a bunch of Debian Linux “wheezy” sources to my aptitude configuration. No problem in itself, but it did totally wreck my web server’s ability to load the suhosin.so extension (PHP 5.4 doesn’t support it).

This wasn’t a biggie until I hit up one of my Laravel apps and was greeted with a lovely message that said the following:

 Unhandled Exception Message: PHP Startup: Unable to load dynamic library '/usr/lib/php5/20100525/suhosin.so' - /usr/lib/php5/20100525/suhosin.so: cannot open shared object file: No such file or directory Location: Unknown on line 0 

Not nice. Looking through php.ini, apache2.conf and httpd.conf showed nothing and, since I’m not particularly familiar with suhosin in itself, I couldn’t figure out where the extension was being loaded.

 locate suhosin 

That showed me that there is a file on my system called suhosin.ini located in /etc/php5/conf.d so I fired up nano (I’m not cool enough to use vi) and, sure enough, there at the top was the following line:

 extension=suhosin.so 

I commented that line, restarted the apache services:

 service apache2 restart 

… and now Laravel doesn’t throw any horrible unhandled exceptions about suhosin being broken.

Sorted. 🙂

DigitalFormula is the website of Chris Rasmussen, a Nutanix SE and casual designer/developer based in Melbourne, Australia. -37.813611 144.963056
Custom digitalformula.net Wordpress theme by Chris Rasmussen