Porta 80: conexão recusada. Como corrigir no Mac OSX? [duplicado]

6

Tenho notado alguns problemas com os hosts virtuais do Apache em dois Macs que, do contrário, têm o mesmo tipo de configuração (em termos de httpd.conf, vhosts, hosts etc.) Em um Mac, os hosts virtuais são exibidos sem falhas , em outro, estou recebendo conexão recusada na porta 80.

Isso não parece ser um problema com a configuração do Apache, mas algo relacionado a portas.

Ou seja, a máquina que não atende ao host virtual test.dev em 80 me mostra isso na verificação da porta:

Сканирование портов выполняется…

Port Scanning host: 127.0.0.1

     Open TCP Port:     88          kerberos
     Open TCP Port:     445         microsoft-ds
     Open TCP Port:     548         afpovertcp
     Open TCP Port:     631         ipp
Сканирование портов завершено…

A máquina que serve o test.dev mostra isso:

Port Scanning host: 127.0.0.1

     Open TCP Port:     22          ssh
     Open TCP Port:     53          domain
     Open TCP Port:     80          http
     Open TCP Port:     88          kerberos
     Open TCP Port:     445         microsoft-ds
     Open TCP Port:     548         afpovertcp
     Open TCP Port:     631         ipp
Сканирование портов завершено…

Então, na máquina "boa", a porta 80 está listada, na máquina "ruim", não está.

Em ambas as máquinas eu tenho o apache ouvindo *: 80 etc, configurei vhosts corretamente, uma entrada apropriada no arquivo de hosts, etc. Ambos os Macs estão executando o El Capitan, estão na mesma rede, etc.

E enquanto no bom mac, test.dev é servido, no mac ruim, eu entendo isso:

↪ curl -I -L test.dev                                                                                                                                                               15:51:01
curl: (7) Failed to connect to test.dev port 80: Connection refused

Estou com uma perda, porque não sei como consertar isso. Por que a porta 80 não está aparecendo na varredura de porta do Mac ruim (usando o aplicativo Network Utility), ainda que sudo lsof -i -P | grep -i "80" me dê:

httpd     4482           root    5u  IPv6 0xfe89d5ee2c7da24b      0t0  TCP *:80 (LISTEN)
httpd     4484         daemon    5u  IPv6 0xfe89d5ee2c7da24b      0t0  TCP *:80 (LISTEN)
httpd     4485         daemon    5u  IPv6 0xfe89d5ee2c7da24b      0t0  TCP *:80 (LISTEN)
httpd     4486         daemon    5u  IPv6 0xfe89d5ee2c7da24b      0t0  TCP *:80 (LISTEN)
httpd     4487         daemon    5u  IPv6 0xfe89d5ee2c7da24b      0t0  TCP *:80 (LISTEN)
httpd     4488         daemon    5u  IPv6 0xfe89d5ee2c7da24b      0t0  TCP *:80 (LISTEN)

Muito obrigado antecipadamente.

Tudo de bom, Tench

Editar: me pediram para justificar por que essa não é uma pergunta duplicada para a pergunta mais geral sobre conexão recusada. Não é porque minha pergunta era específica para o Mac OSX e a solução que funcionou para mim (veja abaixo) exigia a edição do pf.conf e o uso do pfctl que não é mencionado na suposta pergunta duplicada.

    
por Tench 11.12.2015 / 10:07

1 resposta

6

Para garantir que a porta 80 esteja aberta para TCP em todas as interfaces, adicionei

pass in proto tcp from any to any port 80

para /etc/pf.conf . Recarregar o pfctl não funcionou bem, mas foi uma reinicialização. Agora, a porta aparece como aberta na varredura de portas e meus hosts virtuais são atendidos como deveriam.

    
por 12.12.2015 / 08:36