简体   繁体   中英

webLogic plug-in 12.2.1.4 error: libonsssl.so: undefined symbol: onsStrFmt

I currently have my Apache web server running with the webLogic plug-in version 12.2.1. I'm trying to upgrade the plug-in to version 12.2.1.4 (downloaded from here ). However, when I try to start Apache with this newer version of the plug-in, I get the following error undefined symbol: onsStrFmt in /var/log/messages :

Dec 10 07:51:37 host-name-here systemd: Starting The Apache HTTP Server...
Dec 10 07:51:37 host-name-here httpd: httpd: Syntax error on line 356 of /etc/httpd/conf/httpd.conf:
   Syntax error on line 4 of /etc/httpd/conf.d/all-envs.conf:
   Cannot load /etc/httpd/WLSPlugin12.2.1.4.0/lib/mod_wl_24.so into server:
   /etc/httpd/WLSPlugin12.2.1.4.0/lib/libonsssl.so: undefined symbol: onsStrFmt
Dec 10 07:51:37 host-name-here systemd: httpd.service: main process exited, code=exited, status=1/FAILURE
Dec 10 07:51:37 host-name-here kill: kill: cannot find process ""
Dec 10 07:51:37 host-name-here systemd: httpd.service: control process exited, code=exited status=1
Dec 10 07:51:37 host-name-here systemd: Failed to start The Apache HTTP Server.
Dec 10 07:51:37 host-name-here systemd: Unit httpd.service entered failed state.
Dec 10 07:51:37 host-name-here systemd: httpd.service failed.

The server is running SELinux, but I think I have all the library files labeled correctly:

system_u:object_r:httpd_modules_t:s0 libclntshcore.so
system_u:object_r:httpd_modules_t:s0 libclntshcore.so.12.1
system_u:object_r:httpd_modules_t:s0 libclntsh.so
system_u:object_r:httpd_modules_t:s0 libclntsh.so.12.1
system_u:object_r:httpd_modules_t:s0 libdms2.so
system_u:object_r:httpd_modules_t:s0 libipc1.so
system_u:object_r:httpd_modules_t:s0 libmql1.so
system_u:object_r:httpd_modules_t:s0 libnnz12.so
system_u:object_r:httpd_modules_t:s0 libons.so
system_u:object_r:httpd_modules_t:s0 libonsssl.so
system_u:object_r:httpd_modules_t:s0 libonssys.so
system_u:object_r:httpd_modules_t:s0 mod_wl_24.so
system_u:object_r:httpd_modules_t:s0 mod_wl.so

I've also created a file /etc/ld.so.conf.d/apache-weblogic-plugin.conf which contains a single line:

/etc/httpd/WLSPlugin12.2.1.4.0/lib

Followed by running the command: ldconfig I don't fully understand how library linking works, but I've also tried running ldd /etc/httpd/WLSPlugin12.2.1.4.0/lib/mod_wl_24.so which gives:

        linux-vdso.so.1 =>  (0x00007ffc4f955000)
        libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007f154542c000)
        libonssys.so => /etc/httpd/WLSPlugin12.2.1.4.0/lib/libonssys.so (0x00007f1545219000)
        libonsssl.so => /etc/httpd/WLSPlugin12.2.1.4.0/lib/libonsssl.so (0x00007f1545003000)
        libdms2.so => /etc/httpd/WLSPlugin12.2.1.4.0/lib/libdms2.so (0x00007f1544dab000)
        libm.so.6 => /lib64/libm.so.6 (0x00007f1544aa9000)
        libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f1544892000)
        libc.so.6 => /lib64/libc.so.6 (0x00007f15444d1000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007f15442cd000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f15459d2000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f15440b0000)
        librt.so.1 => /lib64/librt.so.1 (0x00007f1543ea8000)

And the command ldd /etc/httpd/WLSPlugin12.2.1.4.0/lib/libonsssl.so which gives:

        linux-vdso.so.1 =>  (0x00007ffcc6a6e000)
        libonssys.so => /etc/httpd/WLSPlugin12.2.1.4.0/lib/libonssys.so (0x00007f847d103000)
        libc.so.6 => /lib64/libc.so.6 (0x00007f847cd42000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f847cb25000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f847d553000)

Apache version is 2.4.6, and CentOS version is 7.3.1611.

Any suggestions on how to resolve this error would be greatly appriciated!

I was able to get this fixed. The issue was that the file /etc/sysconfig/httpd had the line below, which was referring to the old plug-in:

LD_LIBRARY_PATH=/etc/httpd/weblogic-plugin-12.2.1.0/lib

When upgrading to the newer plug-in, I set the LD_LIBRARY_PATH by creating a file /etc/ld.so.conf.d/apache-weblogic-plugin.conf which contained the line:

/etc/httpd/WLSPlugin12.2.1.4.0/lib

However, I never removed the LD_LIBRARY_PATH from /etc/sysconfig/httpd. Once that line was removed, Apache was able to boot with the new plug-in.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM