Tomcat 运行时 httpd 未启动

Tomcat 运行时 httpd 未启动

我在 CentOS 7 上使用 Apache 的 httpd 和 Tomcat 时发现一个问题。两者都在同一台主机上运行,​​均从官方存储库安装。httpd 使用 mod_auth_mellon 执行 SAML 并代理到在 Tomcat 中运行的后端 Web 应用程序。

初始情况:

  1. 两项服务均已停止

第一个用例:

  1. systemctl 启动 httpd
  2. systemctl 启动 tomcat
  3. --> 有效

第二个用例:

  1. systemctl 启动 tomcat
  2. systemctl 启动 httpd
  3. --> 不起作用

错误信息:

Aug 09 14:03:08 prod2.localdomain systemd[1]: Starting The Apache HTTP Server...
-- Subject: Unit httpd.service has begun start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit httpd.service has begun starting up.
Aug 09 14:03:09 prod2.localdomain systemd[1]: httpd.service: main process exited, code=exited, status=1/FAILURE
Aug 09 14:03:09 prod2.localdomain kill[55952]: kill: cannot find process ""
Aug 09 14:03:09 prod2.localdomain systemd[1]: httpd.service: control process exited, code=exited status=1
Aug 09 14:03:09 prod2.localdomain systemd[1]: Failed to start The Apache HTTP Server.
-- Subject: Unit httpd.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit httpd.service has failed.
--
-- The result is failed.
Aug 09 14:03:09 prod2.localdomain systemd[1]: Unit httpd.service entered failed state.
Aug 09 14:03:09 prod2.localdomain systemd[1]: httpd.service failed.

没有端口冲突,用以下方法检查netstat -nalp。httpd 仅绑定到端口 80,tomcat 仅绑定到端口 8080 和 8009。

因此有两个问题:

  1. systemd 尝试杀死什么?
  2. 怎么了?

答案1

error_log 中有什么内容吗?还请检查 systemd 中的 /usr/lib/systemd/system/httpd.service/httpd.service 设置。也许存在依赖关系。

相关内容