我遇到了一个很奇怪的问题。 我正在debuggingEC2实例的server 500错误脚本,发现我们没有安装ioncube loader。 所以我去安装它们,我在/etc/php.d/zend.ini
创build了一个新文件,最初我插入了extension=/usr/local/ioncube/ioncube_loader_lin_5.3.so
的值,然后重新启动httpd点它告诉我:
The ionCube Loader is a Zend-Engine extension and not a module Please specify the Loader using 'zend_extension' in php.ini PHP Fatal error: Unable to start ionCube Loader module in Unknown on line 0
所以我把zend.ini的内容改成了zend_extension = / usr / …等。 现在,当我尝试重新启动httpd我得到这个错误:
Starting httpd: (98)Address already in use: make_sock: could not bind to address [::]:80 (98)Address already in use: make_sock: could not bind to address 0.0.0.0:80 no listening sockets available, shutting down Unable to open logs
我什至不能运行/etc/init.d/httpd stop
没有它的错误。 我已经去除了zend.ini,看看是否是由于这个原因造成的。
有任何想法吗?
如果根据David Schwartz的build议没有任何东西在端口80上进行监听,那么问题很可能是您的Apacheconfiguration中有两个Listen 80
指令。 他们可能不是彼此靠近,甚至不在同一个文件中。
尝试grep -r Listen /etc/httpd
find它们并删除其中的一个。
Zend-server应该被删除
yum zend-server remove
去掉
rm -f /var/lock/subsys/httpd
closures进程httpd
ipcs -s | grep apache | perl -e 'while (<STDIN>) { @a=split(/\s+/); print `ipcrm sem $a[1]`}'
查看状态apache
/etc/init.d/httpd status
然后启动apache
/etc/init.d/httpd start