Wednesday, November 8, 2017

14.04 - Apache enable worker mpm


I have configured FastCGI and PHP5-FPM to work on ubuntu, Which is working fine.


But i installed "apache2 worker mpm" module and wanted to configure and replace "prefork mpm" which is default in apache2.


All i found was in CentOS at /etc/sysconfig/httpd just putting HTTPD=/usr/sbin/httpd.worker will make "worker mpm" enabled.



  1. How do we enable "worker mpm" in Ubuntu?


  2. Also when i list the compiled modules of apache "/usr/sbin/apachectl -l" it wont list "prefork.c" which said to be listing since we are using it by default. But when i do "/usr/sbin/apache2 -V | grep MPM" it shows "Server MPM: prefork" can some one explain this please?



$ /usr/sbin/apache2 -V | grep MPM


Server MPM:     prefork

phpinfo();


Server API :    FPM/FastCGI


After some time of working i did it myself. You can find the steps below.


Check which MPM apache is currently running:


apachectl -V | grep -i mpm
Result:
Server MPM: prefork

List Available MPM Modules (Make sure mpm_worker is listed)


ls /etc/apache2/mods-available/mpm*
Result:
/etc/apache2/mods-available/mpm_event.conf /etc/apache2/mods-available/mpm_prefork.conf /etc/apache2/mods-available/mpm_worker.conf
/etc/apache2/mods-available/mpm_event.load /etc/apache2/mods-available/mpm_prefork.load /etc/apache2/mods-available/mpm_worker.load

List Enabled MPM Modules (If mpm_worker is not enabled we should enable it and disable the mpm_prefork module)


ls -l /etc/apache2/mods-enabled/mpm*
Result:
/etc/apache2/mods-enabled/mpm_prefork.conf -> ../mods-available/mpm_prefork.conf
/etc/apache2/mods-enabled/mpm_prefork.load -> ../mods-available/mpm_prefork.load

Disable MPM_PREFORK module


a2dismod mpm_prefork

Enable MPM_WORKER module


a2enmod mpm_worker

To check if Apache is running on MPM WORKER


apachectl -V | grep -i mpm
Result:
Server MPM: worker

If you get this error after executing these commands:


Apache is running a threaded MPM, but your PHP Module is not compiled to be threadsafe. You need to recompile PHP

Try to remove libapache2 package:


apt-get remove libapache2-mod-php5

No comments:

Post a Comment

11.10 - Can't boot from USB after installing Ubuntu

I bought a Samsung series 5 notebook and a very strange thing happened: I installed Ubuntu 11.10 from a usb pen drive but when I restarted (...