vlee

Well-Known Member
Oct 13, 2005
373
26
178
Spokane, Washington
cPanel Access Level
Root Administrator
I currently run Customized cPanel Default with only PHP 5.6 and PHP 7.0.


I also saw that HTTP 2 does now work.


So, I tried it with mod_mpm_event noticed that mod_ruid2 is disabled and I would have make permission changes on directories and files so websites can work properly.


I like the performance mod_mpm_prefork gives me.


I like the idea using HTTP 2 because it’s features are newer and better than the old way and my concerns are,


I want to keep PHP 5.6 and PHP 7.0 because there are websites on my servers that do not work with PHP 7.0 because software vendors have not yet updated to use PHP 7 so they are stuck with PHP 5.6 for now.


SuPHP is great but has performance issues and that is why I am using the Customized cPanel Default.


Does mod_mpm_event gives better performance to SuPHP?


OR


Is there a better way of doing this be able to use HTTP 2?
 

vlee

Well-Known Member
Oct 13, 2005
373
26
178
Spokane, Washington
cPanel Access Level
Root Administrator
Mod event + suphp + php-fpm is a very compliant one.

I use it smoothly on many servers.

Prefork is cumbersome and an old mpm.
That works

But I found 2 other issues after doing setting things up

Problem 1

Cannot use PHP Handler SuPHP at least on my end websites are broken and even checked permissions on files and folders which are correctly set for SuPHP.

SuPHP is no biggie for me and PHP Handler CGI still works fine.


Problem 2

Problem 2 is towards HTTP 2 with SSL

When you run a SSL Server Test on the domain that is running HTTP 2 with an SSL it comes up with Server negotiated HTTP/2 with blacklisted suite

Also browsers crash when you pull up a website HTTP 2 with SSL and you have refresh the page and website comes up fine.


So this in mind the SSL Cipher Suite needs to be updated to work with HTTP 2 for those that using SSL's with HTTP 2.
 

cPanelMichael

Administrator
Staff member
Apr 11, 2011
47,880
2,260
463
Hello,

To update, internal case EA-6600 is open to determine how to best handle HTTP2 compatibility with the Prefork MPM (i.e. if a conflict should occur when attempting to enable both of them in an EA4 profile). I'll monitor this case and update this thread with the outcome.

Thank you.
 

Hosted Power

Member
PartnerNOC
Sep 11, 2015
13
0
51
Belgium
cPanel Access Level
DataCenter Provider
suphp with mpm_event is not a solution for us since opcache is incompatible. We also use mod_ruid2 for best performance...

Only solution I see to quickly solve it without compatibility problems is to use nginx in front of apache2. Or trying php-fpm , but not sure how we could have correct user permissions (want to run php process as account user) and still having best possible performance.
 

JacobPerkins

Well-Known Member
May 2, 2014
617
97
103
cPanel Access Level
DataCenter Provider
Twitter
Hello,

We attempted to make Prefork and H2 compatible, but we were not very successful. As such, we are releasing a hard conflict today between the http2 and prefork packages.

If you have both packages installed, you will not be able to update until you remove the http2 package. We've released an autofixer to assist with this. If you try to 'yum update' and you get conflict errors about http2 and prefork, you can run this script via ROOT on the command line / SSH:

Code:
/scripts/autorepair ea4_address_mod_http2_conflict_with_mod_mpm_prefork
 

cPanelMichael

Administrator
Staff member
Apr 11, 2011
47,880
2,260
463

cPanelMichael

Administrator
Staff member
Apr 11, 2011
47,880
2,260
463
Hello @grabyourhosting,

The "Fixed" status on the Apache bug report is not to indicate the two technologies have been made compatible:

Prefork is not a threaded MPM. When used with h2, if the server was under stress, h2 may try to reference memory which was already unmapped. As of 2.4.27, Apache developers have set 'h2_workers' to 1, which essentially negates the effects h2 has. As a result, we created a conflict for h2 and Prefork.
Thank you.
 
  • Like
Reactions: grabyourhosting

Andy83

Member
Jul 28, 2017
16
0
51
Canada
cPanel Access Level
Root Administrator
Hi,

I thought of installing http2 using EasyApache. However, I was prompted the following.
--
The following conflicts are installed on this machine. They will be removed as part of this package selection:
mod_cgi
php71-php
mod_mpm_prefork

The following requirements are not installed on this machine. They will be added as part of this package selection:
mod_http2

--

What will be the replacement modules for mod_cgi and php71-php?

Please advise if I should install mpm worker and mod_suphp? What other modules are required?

Do I need PHP-FPM?

I look forward to your reply. Thank you.
 

cPanelMichael

Administrator
Staff member
Apr 11, 2011
47,880
2,260
463
What will be the replacement modules for mod_cgi and php71-php?

Please advise if I should install mpm worker and mod_suphp? What other modules are required?

Do I need PHP-FPM?
Hello,

When you click "Continue", you will receive an additional prompt that states the following:

Your selection removed ea-apache24-mod_mpm_prefork. An MPM package must exist on your system. Click “Continue” to select a new MPM package. Click “Cancel” to cancel this operation.

suPHP and/or PHP-FPM with the Event MPM is an alternative that will allow you to use HTTP2. There is some discussion of this in the earlier posts.

Thank you.
 

vlee

Well-Known Member
Oct 13, 2005
373
26
178
Spokane, Washington
cPanel Access Level
Root Administrator
I currently use Event and HTTP2 and this works for now.

Questions...

I would like to know if Prefork and HTTP2 or mod_ruid2 and HTTP2 is compatible yet?

or

I would like to know if Prefork and HTTP2 or mod_ruid2 and HTTP2 is being worked on for compatibly yet?
 

cPanelMichael

Administrator
Staff member
Apr 11, 2011
47,880
2,260
463
I would like to know if Prefork and HTTP2 or mod_ruid2 and HTTP2 is compatible yet?
I would like to know if Prefork and HTTP2 or mod_ruid2 and HTTP2 is being worked on for compatibly yet?
Hi @vlee,

No, Prefork and HTTP2 are not compatible due to the technology behind how they are developed. I've not seen anything to suggest this will change in the future. You can find more technical details on why this is the case at:

Pony Mail!
mod_http2(v1.10.6) causes segmentation fault · Issue #142 · icing/mod_h2 · GitHub

Thank you.
 

eugenevdm.host

Well-Known Member
Oct 21, 2019
81
11
8
Cape Town
cPanel Access Level
DataCenter Provider