apache集成weblogic的Cannot open TEMP post file问题

现象描述:
apache集成weblogic运行一段时间后,会出现
Cannot open TEMP post file '/tmp/_wl_proxy/_post_245824_1_1235046331_624' for POST of 7991 bytes
报错,重启apache可以恢复正常,但是运行一段时间后又会出该问题。

 

问题分析:
网上查的说法是weblogic应该对/tmp/_wl_proxy/目录有写的权限,但是实际上weblogic所在机器上该目录不存在,创建后,发现该目录也没有写入的操作。
后来分析,post动作应该是apache提交给weblogic,故

 

解决办法:
在apache所在机器/tmp以apache用户创建_wl_proxy目录,问题解决。

 

分析以上的问题:
1、网上的/tmp/_wl_proxy/目录有写的权限的说法是否错误?
网上说的weblogic应该对/tmp/_wl_proxy/目录有写的权限说法应该有偏差,只是这种情况下,apache与weblogic应该是在同一台机器上;
2、运行一段时间才报错,重启恢复正常原因?
运行一段时间后才报该问题,可能是因为启动apache后,post的内容都是放在内存里缓存着,运行一段时间后,内存放满了,则使用临时问题保存post内容。此时不存在该临时文件,故报错;
3、为什么是/tmp/_wl_proxy目录?
由于集成配置中未指定WLTempDir,故默认使用/tmp/_wl_proxy。

PS:环境说明:
apache所在操作系统:
$ uname -a
Linux testapache 2.6.9-42.ELsmp #1 SMP Wed Jul 12 23:27:17 EDT 2006 i686 i686 i386 GNU/Linux
apache版本:
$ ./apachectl -v
Server version: Apache/2.0.59
Server built:   Aug 21 2009 13:36:05
apache加载模块:
$ ./apachectl -l
Compiled in modules:
  core.c
  worker.c
  http_core.c
  mod_so.c

weblogic所在操作系统
$ uname -a
Linux testapp 2.6.9-42.ELsmp #1 SMP Wed Jul 12 23:27:17 EDT 2006 i686 i686 i386 GNU/Linux

weblogic版本:
8.1.5

apache加载weblogic配置(htpd.conf):
LoadModule weblogic_module modules/mod_wl_20.so
<Location /app>
                SetHandler weblogic-handler
                WebLogicCluster 198.168.11.12:7001

                WLSocketTimeoutSecs 30
                ConnectTimeoutSecs 60
                KeepAliveEnabled ON
                KeepAliveSecs 30
</Location>

后记:
以apache用户在/tmp下创建_wl_proxy目录后发现,该目录下确实有apache用户写临时文件的操作,而且运行一段时间后,    该目录下临时文件会被清空。

阅读更多
想对作者说点什么? 我来说一句

MFC42U.DLL

2017年12月15日 972KB 下载

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭