源码安装apache后启动报错 1.现象 安装apache时,在安装完后去启动报错如下。 httpd: Syntax error on line 161 of /etc/ht

来源:互联网 发布:软件界面 编辑:程序博客网 时间:2024/06/07 20:31

 1.现象

安装apache时,在安装完后去启动报错如下。

httpd: Syntax error on line 161 of /etc/httpd.conf/httpd.conf: Cannot load modules/mod_dir.so into server: /usr/local/apache2/modules/mod_dir.so: undefined symbol: apr_array_clear

   导致apache启动不了,去配置文件把161行注释掉,apache能启动,但是生成error文件,导致无法访问网页,报错信息如下。

/apache/httpd/bin/httpd: symbol lookuperror: /apache/httpd/bin/httpd: undefined symbol: apr_skiplist_init

 2.原因

  libapr-1.so.0文件没有指向apache自己的lib库,没有查出编译过程中什么原因导致libapr-1.so.0文件没有指向自己的lib库。

 3.解决办法

  去其他服务器搭建一个一模一样环境的Apache,把httpd文件拷贝过来(不会去修改二进制文件httpd的lib库的指向),在启动就好使了。

 4.httpd 文件信息比对

错误的  httpd 文件信息

[root@shtpfscpwjtestv01 bin]# ldd /apache/httpd/bin/httpd  

 l  linux-vdso.so.1 =>  (0x00007fffbdfff000)

 libpcre.so.1 => /apache/pcre/lib/libpcre.so.1(0x00007f680a444000)

 libaprutil-1.so.0 => /apache/httpd/apr-util/lib/libaprutil-1.so.0(0x00007f680a21e000)

 libexpat.so.0 => /apache/httpd/apr-util/lib/libexpat.so.0(0x00007f6809ff7000)

  libapr-1.so.0 => /usr/lib64/libapr-1.so.0(0x00007f6809dcb000)

  libuuid.so.1 => /lib64/libuuid.so.1(0x00000034e0e00000)

  librt.so.1 => /lib64/librt.so.1(0x00000034d9a00000)

 libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00000034e2e00000)

 libpthread.so.0 => /lib64/libpthread.so.0 (0x00000034d8e00000)

 libdl.so.2 => /lib64/libdl.so.2 (0x00000034d8a00000)

 libc.so.6 => /lib64/libc.so.6 (0x00000034d8600000)

 /lib64/ld-linux-x86-64.so.2 (0x00000034d8200000)

 libfreebl3.so => /usr/lib64/libfreebl3.so (0x00000034e3200000)

 

正确的  httpd 文件信息

[root@shtpfscpwjtestv01 bin]# ldd /tpsys/apache/httpd/bin/httpd 
        linux-vdso.so.1 =>  (0x00007fffdf155000)
        libpcre.so.1 => /apache/pcre/lib/libpcre.so.1 (0x00007fbdf0250000)
        libaprutil-1.so.0 => /apache/httpd/apr-util/lib/libaprutil-1.so.0 (0x00007fbdf002a000)
        libexpat.so.0 => /apache/httpd/apr-util/lib/libexpat.so.0 (0x00007fbdefe03000)
        
libapr-1.so.0 => /apache/httpd/apr/lib/libapr-1.so.0 (0x00007fbdefbd0000)
        libuuid.so.1 => /lib64/libuuid.so.1 (0x00000034e0e00000)
        librt.so.1 => /lib64/librt.so.1 (0x00000034d9a00000)
        libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00000034e2e00000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00000034d8e00000)
        libc.so.6 => /lib64/libc.so.6 (0x00000034d8600000)
        /lib64/ld-linux-x86-64.so.2 (0x00000034d8200000)
        libfreebl3.so => /lib64/libfreebl3.so (0x00000034e3200000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00000034d8a00000)

阅读全文
0 0