好吧,我在重新启动 Apache 服务器时遇到了一些问题。我修改了服务器上的 ulimit 但我无法重新启动 httpd;我正在运行服务器CentOS 5.8 x64
。httpd -V 的输出:
Server version: Apache/2.2.3
Server built: Jan 10 2013 08:19:28
Server's Module Magic Number: 20051115:3
Server loaded: APR 1.2.7, APR-Util 1.2.7
Compiled using: APR 1.2.7, APR-Util 1.2.7
Architecture: 64-bit
运行时出现的错误/sbin/service httpd restart
(我不打算打印大厅输出):
Syntax error on line 210 of /etc/httpd/conf/httpd.conf:
Syntax error on line 6 of /etc/httpd/conf.d/php.conf:
Cannot load /etc/httpd/modules/libphp5.so into server: libidn.so.11:
wrong ELF class: ELFCLASS32
我用谷歌搜索了这个错误并试图找出问题所在。我发现这libphp5.so
是 64 位架构,而libidn.so.11
32 位。通常,据我所知,在 64 位架构上使用 32 位程序应该没有问题,但在这种情况下,64 位程序中使用了 32 位库(****参见这个相关问题** )。
我尝试安装 64 位版本的库,但我能找到,对于我的操作系统(centOS 5.8
)是 libidn_x86_64 版本,它又是 32 位版本。
服务器上安装的程序:
squid - Proxy
ffmpeg - for video streaming
csf-lfd -> firewall
Apache
感谢您对发现问题的任何帮助!