Назад | Перейти на главную страницу

Адрес уже используется - Amazon AWS

Я столкнулся с действительно странной проблемой. Я отлаживал сценарий ошибки сервера 500 на нашем экземпляре EC2 и обнаружил, что у нас не установлены загрузчики ioncube. Я пошел установить их и создал новый файл в /etc/php.d/zend.ini и изначально я вставил значение 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, чтобы проверить, не это ли вызвало это, а похоже, что это не так.

Любые идеи?

Если в соответствии с предложением Дэвида Шварца ничего не слушает порт 80, проблема, скорее всего, в том, что у вас два Listen 80 директивы в вашей конфигурации Apache. Они могут не находиться рядом друг с другом или даже не в одном файле.

Пытаться grep -r Listen /etc/httpd найти их и удалить один из них.

Zend-сервер нужно удалить

yum zend-server remove

удалять

rm -f /var/lock/subsys/httpd

закрыть процесс 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