【问题标题】:Apache2 doesn't load mod_cluster modulesApache2 不加载 mod_cluster 模块
【发布时间】:2015-12-16 14:35:42
【问题描述】:

我正在开发一个使用 kvm 在开放星云中实例化的 debian jessie 机器。我要安装jboss eap和mod_cluster,所以我需要安装apache2服务。

我按照 mod_cluster 快速入门指南设置 /etc/apache2/apache2.conf 文件如下:

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule slotmem_module modules/mod_slotmem.so
LoadModule manager_module modules/mod_manager.so
LoadModule proxy_cluster_module modules/mod_proxy_cluster.so
LoadModule advertise_module modules/mod_advertise.so

ServerName master
Listen 10.0.0.6:6666
<VirtualHost 10.0.0.6:6666>
  <Directory />
    Order deny,allow
    Deny from all
    Allow from 10.0.0.
</Directory>

KeepAliveTimeout 60
MaxKeepAliveRequests 0
ManagerBalancerName nebula
AdvertiseFrequency 5

<Location /mod_cluster_manager>
  Order deny,allow
  Deny from all
  Allow from 10.0.0.
</Location>

当我运行命令 /etc/init.d/apache2 start 它返回错误,systemctl status apache2.service -l 显示:

apache2.service - LSB: Apache2 web server
Loaded: loaded (/etc/init.d/apache2)
Active: failed (Result: exit-code) since Wed 2015-12-16 15:17:45 CET; 10min ago
Process: 844 ExecStart=/etc/init.d/apache2 start (code=exited, status=1/FAILURE)

Dec 16 15:17:45 debian apache2[844]: Starting web server: apache2 failed!
Dec 16 15:17:45 debian apache2[844]: The apache2 configtest failed. ... (warning).
Dec 16 15:17:45 debian apache2[844]: Output of config test was:
Dec 16 15:17:45 debian apache2[844]: apache2: Syntax error on line 1 of /etc/apache2/apache2.conf: Cannot load modules/mod_proxy.so into server: /etc/apache2/modules/mod_proxy.so: undefined symbol: ap_escape_html
Dec 16 15:17:45 debian apache2[844]: Action 'configtest' failed.
Dec 16 15:17:45 debian apache2[844]: The Apache error log may have more information.
Dec 16 15:17:45 debian systemd[1]: apache2.service: control process exited, code=exited status=1
Dec 16 15:17:45 debian systemd[1]: Failed to start LSB: Apache2 web server.
Dec 16 15:17:45 debian systemd[1]: Unit apache2.service entered failed state.

我无法理解“未定义符号:ap_escape_html”的含义以及如何解决它。

提前感谢您的帮助。

更新 1:我尝试从源代码构建 httpd。我也从源代码安装了 pcre 库,但是当我运行 PREFIX/bin/apachectl -k start 它返回以下错误:

/etc/httpd/bin/httpd: error while loading shared libraries: libpcre.so.1: cannot open shared object file: No such file or directory

【问题讨论】:

  • 你关注this了吗?你只复制模块吗?如果是这样,jboss 模块将针对与 Debian 附带的不同的 httpd 版本进行编译。您可以使用 jboss httpd 并禁用 deb httpd,或者根据 deb httpd 从源代码编译集群模块。
  • @Kenney 是的,我遵循了该指南。我只复制了指南所说的模块。最初我尝试使用从 mod 集群下载的 httpd 预配置安装,但是当我尝试运行“/opt/jboss/httpd/apachectl start”时,它返回错误:“httpd:未找到”。所以我尝试安装 apache2 并将其配置为快速指南所说的将模块复制到 /etc/apache2/modules/
  • 我尝试再次下载 mod cluster 并重新配置它,当我现在启动 apachectl start 它返回“/opt/jboss/httpd/sbin/httpd:符号查找错误:/opt/jboss/httpd/ lib/libapr-1.so.0:未定义符号:dlopen"
  • 也许只是坚持使用现有的 Debian HTTPD(用于自动安全更新)和build mod_cluster from source。不幸的是,没有快速启动。除非您可以运行预配置的安装 - httpd: not found 看起来像一个简单的 $PATH 问题。
  • @Kenney 我刚刚更新了问题,我正在尝试从源代码安装 httpd,但是当我运行 apachectl 时它返回错误

标签: jboss apache2 debian mod-cluster opennebula


【解决方案1】:

我在guide 之后解决了库问题

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-01-19
    • 2012-03-06
    • 1970-01-01
    • 2019-02-26
    • 2013-08-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多