项目为WAS 水平+垂直集群 + IHS转发,在登录portal之前,有一个插件下载对话框,提供了5个插件的下载按钮,在通过IHS打开登录界面后,部分插件的下载按钮无法使用,点击后报500内部错误。但是通过每个WAS server的端口访问,每个下载链接都没问题。
通过IHS转发存在问题,登录单独的WAS server没问题,基本问题定位在了IHS转发上。查看IHS的log和plugin的log,然后清空两个log,重现问题,观察两个log中出现的日志。再plugin的log中发现了每次点下载按钮报500错误的时候,plugin的log中都出现以下报错:
ERROR: ESI: esiMalloc: malloc failure |
经查,该错误是因为plugin-cfg.xml文件中的ESI的相关参数造成的。
找到${plugin_home}/config/webserver1/plugin-cfg.xml文件,修改其中的配置,将ESI功能关闭,做法为
1.使用文本编辑器打开plugin-cfg.xml文件找到如下的内容 2.将Property Name="ESIEnable" Value="true"中的"true"更改为“false”,因此更改完后因该是: |
保存后,重启IHS即可进行验证。
ESI的主要作用是对静态的Web内容提供缓存功能。这一功能会影响到大文件的下载。