我对 Apache/2.4.17 (Unix) 和 weblogic 模块(插件)mod_wl_24.so 有问题
对于这个项目,我使用了 extra 目录下的 httpd_vhosts.conf 配置(我之前在 httpd.conf 中启用了“Ininclude conf/extra/httpd-vhosts.conf”),并且我在 httpd 中保留了默认配置。会议
我使用的是 arch-linux,但我认为这不相关......
我下载了正确版本的WL插件,并将WLSPlugin12.2.1-Apache2.2-Apache2.4-Linux_x86_64-12.2.1.0.0目录放在apache的ServerRoot下:
/etc/httpd
drwxr-xr-x 4 root root 4096 4 dic 18.24 .
drwxr-xr-x 100 root root 12288 9 dic 09.57 ..
drwxr-xr-x 5 root root 4096 9 dic 11.02 conf
lrwxrwxrwx 1 root root 22 11 nov 17.33 modules -> /usr/lib/httpd/modules
drwxr-xr-x 5 root root 4096 4 dic 12.48 WLSPlugin12.2.1-Apache2.2-Apache2.4-Linux_x86_64-12.2.1.0.0
当我在 apache 的额外目录中配置 httpd_vhosts.conf 来加载插件时:
LoadModule weblogic_module WLSPlugin12.2.1-Apache2.2-Apache2.4-Linux_x86_64-12.2.1.0.0/lib/mod_wl_24.so
重新启动 apache 后,我收到此错误:
systemctl status httpd -l
● httpd.service - Apache Web Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)
Active: failed (Result: exit-code) since mer 2015-12-09 11:14:06 CET; 2h 23min ago
Process: 4231 ExecStop=/usr/bin/apachectl graceful-stop (code=exited, status=1/FAILURE)
Process: 4211 ExecStart=/usr/bin/apachectl start -DFOREGROUND (code=exited, status=1/FAILURE)
Main PID: 4211 (code=exited, status=1/FAILURE)
dic 09 11:14:06 lollo-sorint systemd[1]: Stopped Apache Web Server.
dic 09 11:14:06 lollo-sorint systemd[1]: Started Apache Web Server.
dic 09 11:14:06 lollo-sorint apachectl[4211]: httpd: Syntax error on line 499 of /etc/httpd/conf/httpd.conf: Syntax error on line 26 of /etc/httpd/conf/extra/httpd-vhosts.conf: Cannot load WLSPlugin12.2.1-Apache2.2-Apache2.4-Linux_x86_64-12.2.1.0.0/lib/mod_wl_24.so into server: libopmnsecure.so: cannot open shared object file: No such file or directory
dic 09 11:14:06 lollo-sorint systemd[1]: httpd.service: Main process exited, code=exited, status=1/FAILURE
dic 09 11:14:06 lollo-sorint apachectl[4231]: httpd: Syntax error on line 499 of /etc/httpd/conf/httpd.conf: Syntax error on line 26 of /etc/httpd/conf/extra/httpd-vhosts.conf: Cannot load WLSPlugin12.2.1-Apache2.2-Apache2.4-Linux_x86_64-12.2.1.0.0/lib/mod_wl_24.so into server: libopmnsecure.so: cannot open shared object file: No such file or directory
dic 09 11:14:06 lollo-sorint systemd[1]: httpd.service: Control process exited, code=exited status=1
dic 09 11:14:06 lollo-sorint systemd[1]: httpd.service: Unit entered failed state.
dic 09 11:14:06 lollo-sorint systemd[1]: httpd.service: Failed with result 'exit-code'.
我已经在系统上正确设置了 mod_wl_24.so 的 lib 目录的 LD_LIBRARY_PATH:
ls -lrta WLSPlugin12.2.1-Apache2.2-Apache2.4-Linux_x86_64-12.2.1.0.0/lib/
-rwxr-x--- 1 root root 552424 6 ott 07.59 mod_wl.so
-rwxr-x--- 1 root root 553554 6 ott 07.59 mod_wl_24.so
-rwxr-x--- 1 root root 10535697 6 ott 07.59 libnnz11.so
-rwxr-x--- 1 root root 85909 6 ott 07.59 libopmnsecure.so
-rwxr-x--- 1 root root 67967 6 ott 07.59 libonssys.so
-rwxr-x--- 1 root root 326469 6 ott 07.59 libdms2.so
-rwxr-x--- 1 root root 52761218 6 ott 07.59 libclntsh.so
drwxr-xr-x 5 root root 4096 4 dic 12.48 ..
drwxr-xr-x 2 root root 4096 4 dic 17.15 .
env
LD_LIBRARY_PATH=/etc/httpd/WLSPlugin12.2.1-Apache2.2-Apache2.4-Linux_x86_64-12.2.1.0.0/lib
ldd WLSPlugin12.2.1-Apache2.2-Apache2.4-Linux_x86_64-12.2.1.0.0/lib/mod_wl_24.so
linux-vdso.so.1 (0x00007ffd173fb000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007fe6f4178000)
libopmnsecure.so => /etc/httpd/WLSPlugin12.2.1-Apache2.2-Apache2.4-Linux_x86_64-12.2.1.0.0/lib/libopmnsecure.so (0x00007fe6f3f68000)
libonssys.so => /etc/httpd/WLSPlugin12.2.1-Apache2.2-Apache2.4-Linux_x86_64-12.2.1.0.0/lib/libonssys.so (0x00007fe6f3d5a000)
libdms2.so => /etc/httpd/WLSPlugin12.2.1-Apache2.2-Apache2.4-Linux_x86_64-12.2.1.0.0/lib/libdms2.so (0x00007fe6f3b19000)
libm.so.6 => /usr/lib/libm.so.6 (0x00007fe6f381b000)
libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007fe6f3604000)
libc.so.6 => /usr/lib/libc.so.6 (0x00007fe6f3260000)
libdl.so.2 => /usr/lib/libdl.so.2 (0x00007fe6f305c000)
/usr/lib64/ld-linux-x86-64.so.2 (0x0000563b8fd02000)
libpthread.so.0 => /usr/lib/libpthread.so.0 (0x00007fe6f2e3e000)
librt.so.1 => /usr/lib/librt.so.1 (0x00007fe6f2c36000)
所以,libopmnsecure.so lib是由系统定义和详细说明的...
我有点绝望,因为我找不到合理的解释......
以前有人遇到过这样的问题吗?任何一点帮助将不胜感激:)
我对 Red Hat RHEL7 和 apache 2.4 也有类似的问题。
对于这种错误
Cannot load .../lib/mod_wl_24.so into server: libonssys.so: cannot open shared object file: No such file or directory
Library libonssys.so is given with weblogic httpd module.
下
/etc/ld.so.conf.d/
创建一个文件pluginWeblogic.conf,其值为pathToWeblogicPlugin/lib
对于此示例,值文件pluginWeblogic.conf 与
/etc/httpd/WLSPlugin12.2.1-Apache2.2-Apache2.4-Linux_x86_64-12.2.1.0.0/lib
并在 shell 上运行:
ldconfig
然后重新启动 apache :
systemctl restart httpd
查看以下文件:
cat /usr/lib/systemd/system/httpd.service
在 [Service] 下指定 EnvironmentFile=/etc/sysconfig/httpd
使用 Weblogic 插件的 LD_LIBRARY_PATH 更新文件 /etc/sysconfig/httpd
vi /etc/sysconfig/httpd
# Update to include Weblogic Plugin
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/PATH/weblogic-plugins/lib
#
重新启动阿帕奇
systemctl stop httpd.service ;
systemctl start httpd.service ;
systemctl status httpd.service
当我使用“systemctl restart httpd”命令时,新的系统控制“systemd”不会加载ENV LD_LIBRARY_PATH...我不知道为什么,但很明显,因为如果我用“apachectl restart”重新启动apache mod_weblogic 已正确加载
我希望这可以帮助任何遇到这个问题的人
来简单地更新 LD_LIBRARY_PATH
插件已放置在路径中
/usr/lib/apache2/modules
我在apache的mods_available路径中添加了文件“weblogic.load”
echo LoadModule weblogic_module /usr/lib/apache2/modules/mod_wl_24.so > /etc/apache2/mods-available/weblogic.load
启动 apache 失败并出现以下错误
/apache2.conf: Syntax error on line 1 of /etc/apache2/mods-enabled/weblogic.load: Cannot load /usr/lib/apache2/modules/mod_wl_24.so into
分辨率
export LD_LIBRARY_PATH=/usr/lib/apache2/modules
cd /etc/ld.so.conf.d
echo /usr/lib/apache2/modules > wlsplugin.conf
ldconfig
apachectl start