how to install php thread safe in rhel7 to support httpd thread based MPM?

Latest response

im using phpmyadmin and some other php based code i developed.
i want to use the MPM worker \ event that are thread based.
it seem that the default version provided in my repo php-5.4.16-42.el7.x86_64 is not thread supported so i cant use it in my httpd.
i know i can use prefork but for better performance i want to use worker\event work.

i search a bit and found that there is php that support thread.
is rhel 7 support that? how and from where i can install it?

Responses

This may answer your question (section referring to RPM install and modification of /etc/sysconfig/httpd):

https://access.redhat.com/solutions/25010

you provided the information on how to change to a different MPM module but that is not my problem and doe not help me. i need to make worker \ event MPM module to be supported by php code which is by default non thread based.

Apologies, I misinterpreted your question.

In respose to your initial question regarding support.. this capability doesn't look to be supported or endorsed upstream (by php), so it would be unlikely for Red Hat to support it.

If you have a support subscription you can raise a ticket for a support statement from them.

http://php.net/manual/en/install.unix.apache2.php

From the above link

Warning

We do not recommend using a threaded MPM in production with Apache 2. Use the prefork MPM, which is the default MPM with Apache 2.0 and 2.2. For information on why, read the related FAQ entry on using Apache2 with a threaded MPM

The following FAQ provides advice on running threaded MPM

http://php.net/manual/en/faq.installation.php#faq.installation.apache2

This suggests using FastCGI, I would recommend following their advice.

thanks for your answer. as the FAQ describes the method for thread support in php is not recommended in production by default so i will stick with prefork.

Close

Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.