ERR_CONNECTION_REFUSED no Localhost (XAMPP, Laragon, MAMP)

RESPOSTA DIRETA
`ERR_CONNECTION_REFUSED` no localhost significa que o navegador não consegue se conectar a um servidor web local em execução. No XAMPP, Laragon ou MAMP, primeiro confirme se o Apache ou Nginx está em execução; se ele não iniciar, verifique se há um conflito nas portas 80 ou 443 e consulte o log de erros do servidor. Se o servidor usar uma porta personalizada, como 8080, inclua essa porta no endereço do localhost.
Pontos principais
- Confirme se o Apache ou Nginx está em execução antes de alterar os arquivos do projeto.
- Um servidor que inicia e para imediatamente geralmente apresenta um conflito de porta ou erro de configuração.
- Verifique as portas 80 e 443 somente quando essas forem as portas configuradas para uso na sua stack local.
- Use o log de erros para diferenciar um problema de bind ou de porta de uma configuração inválida do servidor.
- Se a stack usar uma porta personalizada, teste o
localhostcom essa porta, comolocalhost:8080. - O carregamento da página padrão confirma que a conexão está funcionando; problemas de roteamento do projeto devem ser investigados separadamente.
Site Administrator
O que este erro significa e como reconhecê-lo
- O navegador exibe imediatamente
ERR_CONNECTION_REFUSEDparalocalhostou um hostname local. - O XAMPP, Laragon ou MAMP mostra o Apache ou Nginx como parado, com falha ou não mais em execução.
- O servidor inicia e depois para, às vezes com uma mensagem sobre uma porta, um arquivo de configuração ou um erro de sintaxe.
- O problema aparece após uma reinicialização, mudança no sistema operacional, instalação de servidor local ou edição de configuração.
- Os arquivos do projeto existem no computador, mas o navegador não consegue se conectar ao servidor local.
- Um servidor em uma porta personalizada pode funcionar em um endereço enquanto o
localhostsimples falha, porque o navegador está usando a porta HTTP padrão.
Causas principais, por probabilidade
- O Apache ou Nginx não está em execução — O serviço local pode não ter sido iniciado ou pode ter falhado durante a inicialização.
- Outro processo está usando a porta configurada — O IIS, outra instalação do XAMPP/Laragon/MAMP, um Apache ou Nginx independente, software de virtualização ou outro aplicativo pode já estar escutando na porta 80 ou 443.
- A configuração do servidor é inválida — Um erro de sintaxe no
httpd.conf, em um arquivo de configuração do Nginx, em um arquivo de virtual host ou em outro arquivo do servidor editado recentemente pode fazer o serviço parar imediatamente. - O navegador está usando a porta errada — Uma stack configurada para a porta 8080 ou outra porta personalizada normalmente não responderá ao
localhostsimples na porta HTTP padrão. - O firewall ou o software antivírus está interferindo — Uma mudança recente no software de segurança pode bloquear o servidor local ou o bind de rede, embora isso seja menos comum do que um serviço parado ou um conflito de porta.
Como corrigir
1. Confirme o servidor local e o endereço
Abra o XAMPP Control Panel, o Laragon ou o aplicativo MAMP e verifique se o Apache ou Nginx está marcado como Running. Se estiver parado, selecione Start e anote a mensagem exata caso a inicialização falhe.
Verifique qual porta HTTP ou HTTPS está configurada para uso na stack. Se ela usar uma porta personalizada, teste o endereço correspondente — por exemplo, localhost:8080 — em vez de presumir que o localhost simples está correto.
2. Identifique um conflito de porta
Se a mensagem de inicialização mencionar uma porta já em uso, verifique a porta relevante. No Windows, abra o Prompt de Comando com permissão de Administrador, se exigido pelo ambiente, e execute estes comandos somente de leitura:
netstat -ano | findstr :80
netstat -ano | findstr :443Use o ID do processo informado para identificar o responsável no Gerenciador de Tarefas. Não encerre um processo desconhecido. Se o IIS for o responsável pela porta e você tiver autorização para alterar a máquina, desative ou pare o serviço relevante do IIS somente quando ele não for necessário. Caso contrário, configure a stack local para usar uma porta disponível e use essa porta no navegador.
Os comandos acima são específicos do Windows. Em outro sistema operacional, use as ferramentas integradas de rede ou processos ou as informações de porta fornecidas pelo painel de controle da stack.
3. Verifique o log de erros do servidor
Se nenhum processo evidente estiver usando a porta configurada, abra o log de erros do Apache ou Nginx na stack local ou no diretório de logs configurado. Procure o primeiro erro específico, especialmente um caminho de arquivo, uma diretiva de configuração e um número de linha.
Se a falha começou após uma edição de configuração, corrija ou reverta essa alteração. Verifique o httpd.conf, os arquivos de configuração do Nginx, as definições de virtual host e todos os arquivos incluídos. Altere um arquivo por vez para que a causa continue identificável.
4. Verifique se há servidores locais duplicados
Procure uma segunda instalação do XAMPP, Laragon, MAMP, WAMP, Apache ou Nginx independente. Dois serviços normalmente não podem escutar no mesmo endereço e porta. Pare um serviço não utilizado somente se souber que isso é seguro e tiver autorização, ou atribua portas separadas às stacks que você precisa manter.
5. Revise alterações no software de segurança
Se a configuração do servidor for válida e nenhum processo concorrente estiver usando a porta, revise as alterações recentes no firewall ou no antivírus. Use as configurações normais do produto de segurança e crie uma exceção somente quando entender o acesso que ela permitirá. Evite desativar amplamente a proteção como primeira etapa de solução de problemas.
6. Verifique o reparo
Aguarde até que o Apache ou Nginx permaneça no estado Running e abra novamente o endereço configurado do localhost. Uma página padrão do servidor ou o projeto deverá carregar em vez de ERR_CONNECTION_REFUSED.
Se a página padrão carregar, mas o projeto não, o problema de conexão estará resolvido. Continue investigando o document root, o roteamento, o virtual host ou a aplicação, em vez de alterar novamente as configurações de porta.
Prevenção e como verificar a correção
- Registre as portas HTTP e HTTPS usadas por cada stack local, especialmente quando houver mais de uma stack instalada.
- Evite executar vários servidores locais no mesmo endereço e porta; atribua portas distintas quando ambos forem necessários.
- Mantenha uma anotação das alterações nos arquivos de configuração do Apache, Nginx e dos virtual hosts.
- Depois de editar a configuração do servidor, inicie o serviço e verifique o log de erros antes de presumir que o código do projeto está com problemas.
- Use o painel de controle da stack para confirmar que o serviço continua em execução, não apenas que iniciou uma vez.
- Antes de parar um processo ou serviço, confirme que ele não é necessário para o IIS, outra ferramenta de desenvolvimento ou um aplicativo não relacionado.
Quando buscar ajuda externa
Consulte a documentação ou o suporte da comunidade do XAMPP, Laragon ou MAMP quando o serviço continuar parando após uma correção de configuração, o log de erros identificar uma diretiva que você não consegue interpretar ou não for seguro parar o processo que está usando a porta. Inclua o nome da stack, o sistema operacional, as portas HTTP/HTTPS configuradas, a mensagem exata de inicialização e as linhas relevantes do log de erros. Se a página padrão carregar, mas a aplicação falhar, procure ajuda para a configuração do projeto ou do virtual host. Esse erro geralmente é um problema da máquina local, não uma indisponibilidade do site em produção ou do provedor de hospedagem.
Perguntas frequentes
Por que o localhost exibe ERR_CONNECTION_REFUSED?
O navegador não conseguiu se conectar a um servidor web local em execução. O Apache ou Nginx pode estar parado, ter falhado ao iniciar ou estar escutando em uma porta diferente daquela usada no navegador.
Como posso saber se um conflito de porta causou o erro?
Tente iniciar o Apache ou Nginx e leia a mensagem de inicialização. Se ela informar que a porta 80, 443 ou outra porta configurada está em uso, identifique o processo responsável antes de pará-lo ou reconfigurá-lo.
Outra instalação do XAMPP, Laragon ou MAMP pode causar esse erro?
Sim. Várias instalações de servidores locais podem competir pelo mesmo endereço e porta. Mantenha em execução somente o serviço necessário ou atribua portas diferentes, desde que a alteração seja segura e autorizada.
O que devo fazer se o Apache iniciar e depois parar?
Abra o log de erros do servidor e encontre o primeiro erro específico. Um arquivo de configuração e um número de linha identificados apontam para um problema de configuração; uma mensagem de bind ou de porta aponta para um conflito.
ERR_CONNECTION_REFUSED significa que o código do meu projeto está com problemas?
Geralmente, não. O erro ocorre antes que o navegador consiga receber uma resposta da aplicação. Primeiro confirme se a página padrão da stack carrega e, se necessário, investigue o document root, o roteamento ou o virtual host do projeto.
E se meu servidor local usar a porta 8080?
Abra o endereço do localhost com a porta configurada, como localhost:8080, e confirme se o servidor, o endereço no navegador e qualquer configuração de virtual host estão de acordo. O localhost simples normalmente aponta para a porta HTTP padrão.
Documentação adicional
Para procedimentos específicos da stack, consulte a documentação oficial do produto local em uso — XAMPP, Laragon ou MAMP — especialmente os controles de inicialização do Apache/Nginx, as configurações de porta e os locais dos logs de erros. Para identificação de processos, gerenciamento de serviços, regras de firewall e inspeção de portas, use a documentação oficial do sistema operacional. A mensagem de status do painel de controle e o próprio log de erros do servidor são as referências específicas da máquina mais úteis.