Fórum Ubuntu Linux - PT

Suporte Técnico => Servidores => Tópico iniciado por: bfbicalho em 24 de Agosto de 2011, 17:30

Título: Problemas no apache2 (Resolvido)
Enviado por: bfbicalho em 24 de Agosto de 2011, 17:30
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.
Título: Re: Problemas no apache2
Enviado por: zekkerj em 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
Título: Re: Problemas no apache2
Enviado por: bfbicalho em 25 de Agosto de 2011, 01:32
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.
Título: Re: Problemas no apache2
Enviado por: zekkerj em 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?
Título: Re: Problemas no apache2
Enviado por: bfbicalho em 25 de Agosto de 2011, 11:50
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.
Título: Re: Problemas no apache2
Enviado por: zekkerj em 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).
Título: Re: Problemas no apache2
Enviado por: bfbicalho em 25 de Agosto de 2011, 12:53
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.
Título: Re: Problemas no apache2
Enviado por: zekkerj em 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?"
Título: Re: Problemas no apache2
Enviado por: bfbicalho em 25 de Agosto de 2011, 14:26
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.
Título: Re: Problemas no apache2
Enviado por: zekkerj em 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.
Título: Re: Problemas no apache2
Enviado por: bfbicalho em 26 de Agosto de 2011, 09:17
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!