Hey all,
After several hours of searching/reading and not being able to find a conclusive answer, I decided it would probably be best to ask the experts on this forum. I'll try to make my question brief:
My websites are currently running PHP 5.4 + Apache 2.4 (prefork) + suPHP. Now, I'm about to upgrade everything to PHP 5.5 and I'd like to take advantage of the built-in opcode caching, but still have 100% thread safety (due to some old PHP libraries we use) and also have each PHP process execute as a certain user/group (which I currently use suPHP for, but hoping suEXEC will work just as well). Is this possible to achieve reliably?
I'm pretty sure the configuration that would achieve this is Apache 2 MPM prefork + mod_fcgid + suEXEC, but I'm unsure about some of the "gotchas" and other details of configuring this setup. I know one thing that MUST be done is to make sure PHP does not spawn of child processes...basicall let mod_fcgid handle all the PHP process management.
Will the PHP 5.5 opcode cache work well with mod_fcgid and MPM prefork?
Will this setup allow simultaneously webpage requests to actually process simultaneously and not block if one PHP script takes an extra long time?
Lastly, I assume in each VirtualHost I'll have to change the relevant suPHP config
<IfModule mod_suphp.c>
suPHP_UserGroup user1 group1
</IfModule>
to
SuexecUserGroup user1 group1
Any help answering these questions or elaborating on a setup to achieve the desired results would be GREATLY APPRECIATED. Thank you!
After several hours of searching/reading and not being able to find a conclusive answer, I decided it would probably be best to ask the experts on this forum. I'll try to make my question brief:
My websites are currently running PHP 5.4 + Apache 2.4 (prefork) + suPHP. Now, I'm about to upgrade everything to PHP 5.5 and I'd like to take advantage of the built-in opcode caching, but still have 100% thread safety (due to some old PHP libraries we use) and also have each PHP process execute as a certain user/group (which I currently use suPHP for, but hoping suEXEC will work just as well). Is this possible to achieve reliably?
I'm pretty sure the configuration that would achieve this is Apache 2 MPM prefork + mod_fcgid + suEXEC, but I'm unsure about some of the "gotchas" and other details of configuring this setup. I know one thing that MUST be done is to make sure PHP does not spawn of child processes...basicall let mod_fcgid handle all the PHP process management.
Will the PHP 5.5 opcode cache work well with mod_fcgid and MPM prefork?
Will this setup allow simultaneously webpage requests to actually process simultaneously and not block if one PHP script takes an extra long time?
Lastly, I assume in each VirtualHost I'll have to change the relevant suPHP config
<IfModule mod_suphp.c>
suPHP_UserGroup user1 group1
</IfModule>
to
SuexecUserGroup user1 group1
Any help answering these questions or elaborating on a setup to achieve the desired results would be GREATLY APPRECIATED. Thank you!