我无法使用模块 mod_jk 启动 Apache

我无法使用模块 mod_jk 启动 Apache

我已经在 CentOS 7 中安装了 Apache HTTP 服务器。安装后它可以成功运行。

然后我尝试添加mod_jk模块按照以下步骤进行操作。

  1. 我下载了 Tomcat Connectors 压缩源文件。我尝试了 v.1.2.35(此版本始终有效)和 v.1.2.42(最新版本)。
  2. 我解压了该文件。
  3. 里面TOMCAT 连接器解压目录/native 我执行了
./configure --with-apxs=/usr/sbin/apxs && make
  1. 我复制了TOMCAT 连接器解压目录/native/apache-2.0/mod_jk.so 到 /etc/httpd/modules
  2. 我将文件的所有者更改为 root,并将文件的权限更改为 755。
  3. 我将文件 10-mod_jk.conf 添加到 /etc/httpd/conf.modules.d/,内容如下
加载模块 jk_module 模块/mod_jk.so
  1. 我重新启动了 Apache 来应用更改。

完成第 7 步后,我得到了以下信息:

重定向到 /bin/systemctl restart httpd.service
httpd.service 的作业失败,因为控制进程以错误代码退出。有关详细信息,请参阅“systemctl status httpd.service”和“journalctl -xe”。

查看日志,我得到了以下信息:

ene 11 15:04:42 esvirlcportal02.amaseguros.local systemd[1]: 正在停止 Apache HTTP 服务器...
ene 11 15:04:43 esvirlcportal02.amaseguros.local systemd[1]: 正在启动 Apache HTTP 服务器...
ene 11 15:04:43 esvirlcportal02.amaseguros.local httpd[14485]: httpd: /etc/httpd/conf/httpd.conf 第 56 行语法错误: /etc/httpd/conf.modules.d/10-jk.conf 第 1 行语法错误: 无法将 modules/mod_jk.so 加载到服务器中: /etc/httpd/modules/mod_jk.so: 无法打开共享对象文件: 权限被拒绝
ene 11 15:04:43 esvirlcportal02.amaseguros.local systemd[1]: httpd.service: 主进程已退出,代码=已退出,状态=1/FAILURE
ene 11 15:04:43 esvirlcportal02.amaseguros.local kill[14486]: kill: 找不到进程“”
ene 11 15:04:43 esvirlcportal02.amaseguros.local systemd[1]: httpd.service: 控制进程已退出,代码=退出状态=1
ene 11 15:04:43 esvirlcportal02.amaseguros.local systemd[1]: 无法启动 Apache HTTP 服务器。
ene 11 15:04:43 esvirlcportal02.amaseguros.local systemd[1]: 单元 httpd.service 进入失败状态。
ene 11 15:04:43 esvirlcportal02.amaseguros.local systemd[1]: httpd.service 失败。

我已经多次执行了这些步骤,从未遇到过问题。我又仔细地重复了两次,结果还是一样。

知道可能是什么问题吗?

谢谢!

== 更新 ==

我使用的步骤说明SELinux 阻止 Apache 启动正如@Federico_Sierra 所说,但它仍然失败。使用最后一个命令我得到了这个:

# ausearch -m avc -ts 最近
----
时间->2017 年 1 月 11 日星期三 15:46:03
类型 = SYSCALL msg = 审核(1484145963.026:288):arch = c000003e syscall = 2 成功 = 否退出 = -13 a0 = 7fcbcb999920 a1 = 242 a2 = 1b6 a3 = 0 项目 = 0 ppid = 1 pid = 14516 auid = 4294967295 uid = 0 gid = 0 euid = 0 suid = 0 fsuid = 0 egid = 0 sgid = 0 fsgid = 0 tty =(无)ses = 4294967295 comm =“httpd”exe =“/usr/sbin/httpd”subj = system_u:system_r:httpd_t:s0 key =(null)
类型 = AVC 消息 = 审核 (1484145963.026:288): avc: 拒绝 { 写入 } pid = 14516 comm = “httpd” 路径 = “/var/log/httpd/jk-runtime-status.14516” dev = “dm-1” ino = 139239092 scontext = system_u:system_r:httpd_t:s0 tcontext = system_u:object_r:httpd_log_t:s0 tclass = file

但我不知道它的意思。

答案1

点击@Federico-Sierra 提供的链接(SELinux 阻止 Apache 启动)我重新启动了操作系统,再次尝试后它就正常工作了。

太感谢了!!

相关内容