Derekn

Member
Mar 25, 2017
16
0
1
cPanel Access Level
Website Owner
Hi,
Today i tried to install mod_http2 through EasyApache4 but it could not work. When i tried to install it, it said conflict with mod_mpm_prefork, so i tried to uninstalled mod_mpm_prefork, but mod_mpm_prefork could NOT be uninstalled.
I checked uninstalled mod_mpm_prefork, then provision and run system update. After that i go back and tried to install Mod_http2, i still see mod_mpm_prefork there. I tried to uninstalled again, and it showed nothing at provision page.
I tried another way, by install Mod_http2 ignore mod_mpm_prefork, but it still asked for others to choose, so i am very confused about this process:

"While resolving the dependencies, we have identified the following breakpoint. Please select one to continue with the process:
mod_cgi
mod_cgid
"

Can anyone help me with this? Thank you so much
 

cPWilliamL

cP Technical Analyst II
Staff member
May 15, 2017
258
30
103
America
cPanel Access Level
Root Administrator
Hi @Derekn,

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.

It sounds like you may not have chosen an MPM to replace Prefork. Have you tried, for example, uninstalling Prefork, and installing MPM Event with h2?

Regarding cgi vs cgid, please see the `yum info' description:
Code:
Name        : ea-apache24-mod_cgi
Description : The mod_cgi module adds a handler for executing CGI scripts. This
            : module is meant for a forked MPM; for threaded MPMs, mod_cgid
            : should be used.
Name        : ea-apache24-mod_cgid
Description : The mod_cgid module adds a handler for executing CGI scripts. This
            : module is meant for threaded MPMs; for forked MPMs, mod_cgi should
            : be used.
So, for h2, you should have a threaded MPM(i.e. not prefork) and you should use cgid.

Thanks,
 

Derekn

Member
Mar 25, 2017
16
0
1
cPanel Access Level
Website Owner
Hi, yes, it worked. Thank you so much for your help, im really appreciated

Also, my suggestion is you should mention this in http2 installation documentation.