您的位置:首页 > 运维架构 > Apache

解决apache无法启动:undefined symbol: apr_ldap_ssl_init

2010-11-14 22:37 881 查看
[root@test ~]#/etc/init.d/httpd start
Starting httpd: httpd: Syntax error on line 161 of /etc/httpd/conf/httpd.conf: Cannot load /etc/httpd/modules/mod_ldap.so into server: /etc/httpd/modules/mod_ldap.so: undefined symbol: apr_ldap_ssl_init

以前好用的好好的,重启httpd后,竟然无法启动了。。。
根据错误提示,注释掉/etc/httpd/conf/httpd.conf中的“LoadModule ldap_module modules/mod_ldap.so
LoadModule authnz_ldap_module modules/mod_authnz_ldap.so”后,htppd启动正常。
但总觉得很奇怪,是什么原因导致的呢?
[root@test ~]#httpd -V
Server version: Apache/2.2.3
Server built: Sep 3 2009 17:37:31
Server’s Module Magic Number: 20051115:3
Server loaded: APR 1.4.2, APR-Util 1.3.9 #版本不对
Compiled using: APR 1.2.7, APR-Util 1.2.7
Architecture: 64-bit
Server MPM: Prefork
threaded: no
forked: yes (variable process count)
Server compiled with….
-D APACHE_MPM_DIR=”server/mpm/prefork”
-D APR_HAS_SENDFILE
-D APR_HAS_MMAP
-D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
-D APR_USE_SYSVSEM_SERIALIZE
-D APR_USE_PTHREAD_SERIALIZE
-D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
-D APR_HAS_OTHER_CHILD
-D AP_HAVE_RELIABLE_PIPED_LOGS
-D DYNAMIC_MODULE_LIMIT=128
-D HTTPD_ROOT=”/etc/httpd”
-D SUEXEC_BIN=”/usr/sbin/suexec”
-D DEFAULT_PIDLOG=”logs/httpd.pid”
-D DEFAULT_SCOREBOARD=”logs/apache_runtime_status”
-D DEFAULT_LOCKFILE=”logs/accept.lock”
-D DEFAULT_ERRORLOG=”logs/error_log”
-D AP_TYPES_CONFIG_FILE=”conf/mime.types”
-D SERVER_CONFIG_FILE=”conf/httpd.conf”

原来是apr的问题(有多个路径不同的apr)。查看LD_LIBRARY_PATH,并没有异常。查看/etc/ld.so.conf,发现多了一个自定义路径,/usr/local/test
而这个路径下有libapr*相关的文件,注释掉这个路径后,ldconfig一下,OK,httpd能正常启动了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: