Module mod_slotmem_shm导致apache2.4.29加载出错

Module mod_slotmem_shm导致apache2.4.29加载出错,module,solaris,apache2.4,Module,Solaris,Apache2.4,我正在从Apache2.2升级到2.4.29,而没有ssl和ssl,一切都正常工作。但是,当我尝试将代理模块与slotmem_shm模块一起使用时(根据我的理解,这是现在在使用负载平衡器模块时必须使用的),我在错误日志中遇到以下错误: [Fri Mar 16 17:52:12.073931 2018] [lbmethod_heartbeat:notice] [pid 15571:tid 1] AH02282: No slotmem from mod_heartmonitor [Fri Mar 1

我正在从Apache2.2升级到2.4.29,而没有ssl和ssl,一切都正常工作。但是,当我尝试将代理模块与slotmem_shm模块一起使用时(根据我的理解,这是现在在使用负载平衡器模块时必须使用的),我在错误日志中遇到以下错误:

[Fri Mar 16 17:52:12.073931 2018] [lbmethod_heartbeat:notice] [pid 15571:tid 1] AH02282: No slotmem from mod_heartmonitor
[Fri Mar 16 17:52:12.275257 2018] [slotmem_shm:error] [pid 15571:tid 1] (17)File exists: AH02611: create: apr_shm_create(/usr/local/apache_QA_New/logs/slotmem-shm-p9cbf72c_check.shm) failed
[Fri Mar 16 17:52:12.275543 2018] [proxy_balancer:emerg] [pid 15571:tid 1] (17)File exists: AH01185: worker slotmem_create failed
[Fri Mar 16 17:52:12.275721 2018] [:emerg] [pid 15571:tid 1] AH00020: Configuration Failed, exiting
过去两周我一直在进行头脑风暴。我尝试过不同的解决方案,比如增加内核信号量内存,它们大约是128K,我已经增加到16384K,但是这个解决方案似乎仍然不起作用,而且似乎也不是合适的解决方案


在我的平衡器文件中有将近30个平衡器条目,在httpd-vhosts.conf中有50多个虚拟主机条目,每次重启时,apache都会为shm创建一些文件,然后继续运行,直到创建所有文件为止,我必须一次又一次地重启这些文件。

这与底层shm内容无关一切都与多个均衡器(全局均衡器和虚拟主机之外的均衡器)的初始化方式有关,有时还会持久化。这在2.4.29中发生了很大的变化


您应该找到复制错误的最小平衡器集,并在issues.apache.org上打开一个bug。这可能与重复的虚拟主机或重复的代理“worker”有关。

我尝试过不同的解决方案,比如增加内核信号量内存,它们大约为128K,我已经增加到16384K,与共享内存文件创建无关。失败的代码可以在这里找到:如果不知道您的Apache版本是如何编译的,几乎不可能知道我链接到的源代码中采用了哪个代码路径。下面是我的配置enable mods shared=all“enable ssl”enable modules=all“enable autoindex”enable setenif“enable alias”enable so“enable cache=shared”启用状态“启用重写”启用代理“启用代理连接”启用代理ftp“启用代理http”启用代理平衡器“启用mem缓存=共享”启用文件缓存=共享“启用头文件=共享”启用用户跟踪=共享“启用过期数=共享”启用deflate“启用代理ajp”启用不可移植原子=是“禁用字符集lite”使用mpm=worker“with ssl lib=/usr/sfw/lib”with ssl=/usr/sfw“with included apr”注意:apr和apr util放在Apache的srclib中您是否找到了解决此问题的方法?我正在处理类似的问题,在RHEL 8(httpd-2.4.37)上安装apache时,配置有许多平衡器/vhosts。是的,我在运行配置时使用“-enable posix shm”解决了这个问题。