我在尝试执行
phpinfo.php
时收到以下错误。
Apache/bin/httpd:符号查找错误:Apache/bin/httpd:未定义符号:apr_brigade_split_ex
我运行的是 Apache 2.4.7。奇怪的是,当我运行
httpd -V
时,我注意到 Apache 是用更高版本的 apr-util
编译的,但是服务器仅加载低于 1.5.3 的 1.2.7 版本。
[itapps@sgerp12uatap4 logs]$ httpd -V
Server version: Apache/2.4.7 (Unix)
Server built: Jan 22 2014 12:11:39
Server's Module Magic Number: 20120211:27
Server loaded: APR 1.5.0, APR-UTIL 1.2.7
Compiled using: APR 1.5.0, APR-UTIL 1.5.3
有人可以帮助如何让服务器加载 1.5.3 版本的
apr-util
吗?
还请帮我解决undefined symbol: apr_brigade_split_ex
。
当 apache 启动时,您需要确保 1.5.x apr-util 位于您的共享库搜索路径中,早于 1.2.x。
通常 httpd 由 apachectl 调用,并且 apachectl 获取特定的 envvars 文件。这将是设置共享库路径以选择较新的 apr-util 的好地方。
如果这是 Linux,则您要添加到前面的 var 是 LD_LIBRARY_PATH。