Primeira edição
O primeiro problema é relativamente fácil. Isso significa que outro daemon / serviço já está usando a porta 80, que é a porta TCP que o Apache deseja usar para escutar conexões de navegadores.
Este comando mostrará o que está sendo usado:
$ netstat -tapn |grep :80
Por exemplo:
$ netstat -tapn |grep :80
tcp 0 0 :::80 :::* LISTEN 13415/httpd
tcp 0 0 ::ffff:127.0.0.1:80 ::ffff:127.0.0.1:35880 TIME_WAIT -
tcp 0 0 ::ffff:127.0.0.1:80 ::ffff:127.0.0.1:35909 TIME_WAIT -
tcp 0 0 ::ffff:192.168.1.105:80 ::ffff:192.168.1.6:40061 TIME_WAIT -
tcp 0 0 ::ffff:192.168.1.105:80 ::ffff:192.168.1.6:40060 TIME_WAIT -
Aqui podemos ver que o Apache (httpd) já está em execução e o ID do processo é 13415.
Você pode matá-lo ou descobrir o que mais está escutando na porta 80.
Segunda edição
Para sua segunda edição, acho que o que está acontecendo é que você já tem um servidor Apache em execução, mas não aquele que você acha que é. Então mate-o e veja se o seu segundo problema desaparece.
Se isso não acontecer, você precisará instalar alguns pacotes adicionais dos repositórios do CentOS. Especificamente PHP e qualquer outra coisa que seja necessária para sua aplicação particular.
Por acaso, verifique se você está parando / iniciando o serviço Apache como raiz ou usando o comando sudo
. Usuários normais não podem parar / iniciar este serviço.
Terceira questão
Como o OP apontou que o uso de suEXEC
em uma jaula chrooted não é suportado diretamente por suEXEC
, então é necessário fazer um patch. Este parece ainda ser o caso com a versão atual de suEXEC
.
Aqui está um tutorial muito bom sobre a arquitetura geral da configuração do Apache dessa maneira junto com as etapas para recompilar o suEXEC
para que ele possa suportar o chroot.