FIX: Apache is running a threaded MPM, but your PHP Module is not compiled to be threadsafe in Fedora
After a cool morning on upgrading to Fedora 27, I faced an issue when i tried to resume a web project I was working on. Apache wasn’t running and I checked what was wrong with
$ sudo systemctl status httpd
And caught this error as part of the debug:
Apache is running a threaded MPM, but your PHP Module is not compiled to be threadsafe. You need to recompile PHP.
Really? I have to recompile PHP to enable threadsafe? Hell no!
I tried to disable MPM from Apache but turns on it needs it to run. Reading the docs in /etc/httpd/conf.modules.d/00-mpm.conf
I came across this:
# prefork MPM: Implements a non-threaded, pre-forking web server # See: http://httpd.apache.org/docs/2.4/mod/prefork.html # # NOTE: If enabling prefork, the httpd_graceful_shutdown SELinux # boolean should be enabled, to allow graceful stop/shutdown. # #LoadModule mpm_prefork_module modules/mod_mpm_prefork.so
Life saver! All I had to do is to enable mod_mpm_prefork.so
and disable mod_mpm_event.so
. So lets do this, edit the file /etc/httpd/conf.modules.d/00-mpm.conf
Replace
LoadModule mpm_event_module modules/mod_mpm_event.so
With
LoadModule mpm_prefork_module modules/mod_mpm_prefork.so
Save the file and restart Apache. Voila!!! 😀