将 apache mpm 更改为适用于 CentOS7 的 mpm-itk

将 apache mpm 更改为适用于 CentOS7 的 mpm-itk

我正在尝试在 CentOS 上运行 mpm-itk 模块。不幸的是,这需要 apache 2.4.7,而 centos 上的当前版本是 2.4.6,因此无法编译该模块。

另外,centos 现在提供 httpd-itk 包,它创建另一个 apache 二进制文件 (/usr/sbin/httpd.itk)。

按照文章中,可以设置 /etc/sysconfig/httpd 中的 HTTPD 参数以通过 itk 运行 apache。然而,CentOS 7 不再如此。相反,httpd 使用 /etc/httpd/conf.modules.d/00-mpm.conf 来加载您想要的任何模块。只不过,在这种情况下,itk 不是一个模块,而是一个可执行文件!

在这种情况下,我该如何从使用 httpd.itk 切换到使用 httpd?

谢谢!

答案1

对于那些仍在寻找解决方案和/或AH00534: httpd: Configuration error: No MPM loaded尝试使用 ITK 时遇到问题的人:

要使用 ITK,您现在应该:

  • yum install httpd httpd-itk
  • 编辑 /etc/httpd/conf.modules.d/00-mpm-itk.conf
  • #LoadModule通过删除前导#
  • 不是注释掉这LoadModule mpm_prefork_module00-mpm.conf(这就是我们被困住的地方)
  • 重新开始httpd

您现在应该看到多个httpd进程 - 这与 CentOS 6 不同,其中进程以 运行httpd.itk;如果您访问配置为使用不同用户的进程,您应该看到它切换到以该用户身份运行。

(另请注意,httpd-itk 之前也有一个错误,如 RedHat 的 Bugzilla 中所述:Bug 1188159 - httpd-itk 和 httpd 版本不匹配这阻止了 httpd-itk 的使用)

相关内容