Problemas no apache2 (Resolvido)

Iniciado por bfbicalho, 24 de Agosto de 2011, 17:30

tópico anterior - próximo tópico

bfbicalho

Boa tarde a todos,

Estou com problema no meu servidor apache2. este problema vem ocorrendo algum tempo e já busquei muito uma solução mas achei uma parcial... mas se tenho que desligar o servidor ou reiniciar o erro volta:

make_sock: could not bind to address 0.0.0.0:8080

Alguém pode me ajudar com este erro?

a solução temporária é esta:
fuser -k -n tcp 8080

op meu apache2 está funcionando na porta 8080 e não consigo de jeito algum acessar o freePBX e muito mesmo outros recursos, mas com o comando acima tenho acesso até ao phpmyadmin

Obrigado pela ajuda.

zekkerj

Vc tem outro processo rodando e ocupando essa porta. Pra saber qual é:

sudo lsof -i -P | grep 8080
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

bfbicalho

Citação de: zekkerj online 24 de Agosto de 2011, 23:39
Vc tem outro processo rodando e ocupando essa porta. Pra saber qual é:

sudo lsof -i -P | grep 8080
Bom dia zekkerj,

Tudo bem?

o comando que vc postou me deu a seguinte resposta:

root@asterisk:~# lsof -i -P | grep 8080
apache2   32038     root    4u  IPv4 156704      0t0  TCP *:8080 (LISTEN)
apache2   32043 asterisk    4u  IPv4 156704      0t0  TCP *:8080 (LISTEN)
apache2   32044 asterisk    4u  IPv4 156704      0t0  TCP *:8080 (LISTEN)
apache2   32047 asterisk    4u  IPv4 156704      0t0  TCP *:8080 (LISTEN)
apache2   32051 asterisk    4u  IPv4 156704      0t0  TCP *:8080 (LISTEN)
apache2   32053 asterisk    4u  IPv4 156704      0t0  TCP *:8080 (LISTEN)
apache2   32055 asterisk    4u  IPv4 156704      0t0  TCP *:8080 (LISTEN)
apache2   32056 asterisk    4u  IPv4 156704      0t0  TCP *:8080 (LISTEN)
apache2   32058 asterisk    4u  IPv4 156704      0t0  TCP *:8080 (LISTEN)
apache2   32062 asterisk    4u  IPv4 156704      0t0  TCP *:8080 (LISTEN)
apache2   32106 asterisk    4u  IPv4 156704      0t0  TCP *:8080 (LISTEN)

o que eu tenho que fazer para sanar isso?

todo meu estudo esta desenvolvido em cima deste material a partir da parte 2, pois é onde inicia o treinamento do asterisk e onde me ocasionou a dor de cabeça com o apache2.

Obrigado pela ajuda.

zekkerj

Vc rodou o comando na hora em que recebe o erro? Pq essa saída indica que quem está ocupando a porta é o próprio apache2. Na hora do erro, qual é a saída do comando?
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

bfbicalho

Citação de: zekkerj online 25 de Agosto de 2011, 08:25
Vc rodou o comando na hora em que recebe o erro? Pq essa saída indica que quem está ocupando a porta é o próprio apache2. Na hora do erro, qual é a saída do comando?

Sim, reiniciei o sistema para forçar o erro e o resultado foi esse aqui abaixo:

root@asterisk:~# service apache2 stop
* Stopping web server apache2                                           [ OK ]
root@asterisk:~# service apache2 start
* Starting web server apache2   (98)Address already in use: make_sock: could not bind to address 0.0.0.0:8080
no listening sockets available, shutting down
Unable to open logs
Action 'start' failed.
The Apache error log may have more information.                     [fail]
root@asterisk:~# lsof -i -P | grep 8080
asterisk  1409  root    8u  IPv4  10330      0t0  TCP asterisk.local:8080 (LISTEN)

Como eu posso resolver este problema?

Um abraço e obrigado pela ajuda.

zekkerj

Agora quem está ocupando a porta é o próprio asterisk.

É a mesma situação que se tem quando se usa o Apache junto com o Tomcat, só um dos dois pode ocupar a porta 8080. Assim normalmente o que se faz é deixar o programa específico pegar a porta 8080 (o Tomcat e no seu caso o Asterisk) e usar uma configuração de proxy pra repassar as requisições que chegam na porta 80, que é a porta que o apache usa, normalmente, para o programa específico (tomcat/asterisk).
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

bfbicalho

#6
Citação de: zekkerj online 25 de Agosto de 2011, 12:35
Agora quem está ocupando a porta é o próprio asterisk.

É a mesma situação que se tem quando se usa o Apache junto com o Tomcat, só um dos dois pode ocupar a porta 8080. Assim normalmente o que se faz é deixar o programa específico pegar a porta 8080 (o Tomcat e no seu caso o Asterisk) e usar uma configuração de proxy pra repassar as requisições que chegam na porta 80, que é a porta que o apache usa, normalmente, para o programa específico (tomcat/asterisk).

Então como posso resolver isso? pois não consgigo de jeito algum colocar para funcionar o ambiente FreePBX, por exemplo e muito menos o sarg, nem quando resolvo o problema temporariamente ainda sim não consigo manusear nada somente o phpmyadmin e o webmin também. o arquivo wpad.dat deixou de funcionar também, pois eu estava fazendo uso dele também.

zekkerj

Bem, você tem que se fazer a pergunta: "Porque eu preciso que o Apache ocupe a porta 8080? Não pode ser outra?"
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

bfbicalho

#8
Citação de: zekkerj online 25 de Agosto de 2011, 13:09
Bem, você tem que se fazer a pergunta: "Porque eu preciso que o Apache ocupe a porta 8080? Não pode ser outra?"

Tem razão, mudei para a porta 8090 e funcionou numa boa agora, o problema foi resolvido.

Editado: comemorei cedo demais, pois reiniciei o servidor e o problema persiste. acabei fazendo a mudança para a porta 80 e continuou o mesmo erro vou colocar na porta que mencionei antes para ver se resolve o problema de vez.

Obrigado pela ajuda.

zekkerj

Veja uma porta livre com o comando "netstat -atun". Qualquer porta que aparecer na listagem como "LISTEN" ou "OUÇA" está ocupada.
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

bfbicalho

Citação de: zekkerj online 25 de Agosto de 2011, 23:39
Veja uma porta livre com o comando "netstat -atun". Qualquer porta que aparecer na listagem como "LISTEN" ou "OUÇA" está ocupada.

Apliquei o comando que vc falou e vi a lista com as portas ocupada e as portas livres. derecionei para a porta 5000. fiz 2 testes apliquei o init 6 e no boot o apache2 funcionou normalmente. Em seguida apliquei o comando init 0 e ao ligar o computador o apache2 também iniciou normalmente. Portanto após esses testes eu já vou considerar que agora o problema de fato está resolvido!