A conexão com localhost foi recusada: 5 soluções para corrigir o erro

Entre os erros de conexão de rede mais comuns, temos o “localhost refused to connect”, também conhecido como ERR_CONNECTION_REFUSED ou, em português, a conexão com localhost foi recusada.

Normalmente, ao acessar um endereço IP, você está tentando se conectar a outro computador. No caso do localhost, a situação é diferente. Ele usa o endereço de loopback da rede, o que significa que a conexão é feita com o próprio computador.

Por isso, desenvolvedores e administradores de rede usam o localhost para testar aplicações e sites que ainda estão em desenvolvimento. Esse processo evita riscos desnecessários em ambientes de produção.

Quando ocorre o erro “a conexão com localhost foi recusada”, você perde o acesso ao projeto rodando localmente. Na prática, isso impede testes, ajustes e validações no ambiente local.

Esse problema pode ter várias causas, listadas abaixo. Vale lembrar também que o localhost só pode ser acessado na própria máquina — não é possível acessá-lo a partir de outro dispositivo.

Código do erro O localhost recusou a conexão.
Tipo do erro Navegador/Firewall
Variações do erro ERR_CONNECTION_REFUSED
127.0.0.1 recusou-se a conectar
Não foi possível acessar este site. O localhost recusou a conexão.
Localhost se recusou a conectar
Causas do erro Servidor bloqueado pelo firewall
Servidor rodando na porta errada
Servidor Apache não iniciado ou com falha
Configurações do navegador incorretas

O erro “A conexão com localhost foi recusada” é comum ao trabalhar em ambiente local, onde o localhost simula um servidor web no próprio computador. Ele costuma aparecer por causa de uma porta configurada incorretamente, permissões insuficientes ou falhas no servidor web, como o Apache não estar em execução.

5 métodos para resolver o erro “A conexão com localhost foi recusada”

A seguir estão cinco formas de corrigir o erro “localhost refused to connect” (ou localhost recusou a conexão), sem ordem específica. Começamos pelo método mais simples.

1. Desative o firewall temporariamente

Um firewall é um sistema de segurança que monitora e filtra seu tráfego, bloqueando possíveis ameaças. Embora seja uma ferramenta importante, os protocolos de detecção podem, por vezes, apresentar imprecisões.

Um firewall pode bloquear incorretamente páginas da web seguras ou conexões de entrada. Portanto, se você estiver desenvolvendo um site e precisar acessar a versão hospedada localmente, é melhor desativar temporariamente o firewall. Dessa forma, seu site de teste não será bloqueado.

Lembre-se de reativar seu firewall imediatamente assim que o site entrar no ar e você não vir mais a mensagem de erro “ERR_CONNECTION_REFUSED” no localhost.

Aqui estão os passos para desativar o firewall no Mac, Windows e Linux, respectivamente.

Como desativar o firewall no Mac

  1. Acesse as Preferências do Sistema.
  2. Selecione Segurança e Privacidade.
Acessando as configurações de segurança e privacidade do Mac através das Preferências do Sistema
  1. Selecione a aba Firewall para visualizar as configurações completas do firewall.
  2. Clique no ícone de cadeado e, em seguida, insira seu nome de usuário e senha.
  3. Você verá uma mensagem informando que, se desativar o firewall, aceitará todas as conexões de entrada, incluindo aquelas que potencialmente transportam recursos não autorizados. Clique no botão Desativar Firewall.
Desativar o firewall do Mac através de Segurança e Privacidade
  1. Clique no cadeado para impedir que esta configuração seja alterada sem a sua permissão.

Observe que os passos para desativar o firewall no Mac podem ser ligeiramente diferentes dependendo da sua versão do macOS.

Como desativar o firewall no Windows

Existem duas maneiras de desativar o firewall no Windows 10, 8, 7 e Vista: através do painel de controle ou do prompt de comando.

Aqui estão os passos para desativar o firewall usando o painel de controle:

  1. Abra o Painel de Controle e navegue até Sistema e Segurança. -> Firewall do Windows Defender.
Acessando o Firewall do Windows Defender através do Sistema e Segurança.
  1. Selecione Ativar ou desativar o Firewall do Windows Defender.
Selecionar Ativar ou desativar o Firewall do Windows Defender
  1. Desative os firewalls nas configurações de rede privada e pública.
Desativar firewalls em redes privadas e públicas.
  1. Clique no botão OK para aplicar as alterações.

Se a opção não for clicável, significa que as configurações do firewall estão sob o controle de outro programa de segurança. Nesse caso, talvez seja melhor desinstalar o aplicativo primeiro.

Entretanto, estas etapas servem para desativar o firewall através da linha de comando:

  1. Abra o prompt de comando como administrador.
  2. Digite o seguinte comando:
netsh advfirewall set allprofiles state off

Como desativar o firewall no Linux

Os passos para parar e desativar o firewall variam de acordo com a sua distribuição Linux.

Se você usa Ubuntu ou Debian, seu firewall deve ser gerenciado pelo ufw. Se você usa CentOS ou RHEL, a ferramenta padrão de gerenciamento de firewall será o firewalld.

Importante! É importante interromper o firewall primeiro antes de desativá-lo. Caso contrário, você encontrará erros durante o processo.

Para desativar o firewall no ufw, siga estes passos:

  1. Interrompa o ufw usando este comando:
sudo ufw disable
  1. Após o firewall ser interrompido com sucesso, execute um comando para impedir o serviço ufw de ser iniciado junto com a inicialização do sistema.
sudo systemctl disable ufw
  1. Verifique se o ufw está desativado usando este comando:
sudo ufw status
sudo systemctl status ufw
  1. Reative o ufw:
sudo systemctl enable ufw
sudo ufw enable
## verificar se o ufw foi iniciado ##
sudo ufw status

Alternativamente, aqui estão os passos para parar e desativar o firewall no firewalld:

  1. Interrompa o firewalld usando o seguinte comando.
sudo systemctl stop firewalld
  1. Desative o firewalld durante a inicialização usando este comando.
sudo systemctl disable firewalld
sudo systemctl mask --now firewalld
  1. Basta inserir este comando para verificar se o firewalld foi desativado:
sudo systemctl status firewalld
  1. Execute os seguintes comandos para ativar o firewalld novamente.
sudo systemctl unmask --now firewalld
sudo systemctl enable firewalld
sudo systemctl start firewalld
## verificar se o firewalld foi iniciado ##
sudo firewall-cmd --state

2. Limpe o cache DNS.

O cache DNS armazena dados dos sites que você visita, para que essas páginas da web carreguem mais rapidamente na próxima vez que você acessá-las.

No entanto, se o DNS contiver muitos registros, poderá deixar de funcionar.

Para resolver isso, limpe o cache DNS para apagar os registros:

  1. Abra o prompt de comando digitando “cmd” na barra de pesquisa ao lado do menu Iniciar.
  2. Digite este comando:
ipconfig /flushdns
  1. Verifique se o problema de conexão com a porta 127.0.0.1 foi resolvido.

3. Conecte usando a porta correta

O número da porta padrão para o servidor web é 80. Se você tentar acessar digitando localhost no seu navegador – o que o direcionará para localhost:80 – mas o seu servidor web não estiver configurado para usar a porta padrão, você receberá o erro localhost ou a mensagem “127.0.0.1 recusou a conexão”.

No entanto, a porta 80 pode, por vezes, estar a ser utilizada por outra aplicação no seu computador. Por exemplo, se o Skype estiver usando a porta, você não poderá executar o servidor Apache na mesma porta simultaneamente.

Para resolver esse problema, primeiro vamos verificar se a porta 80 está livre. Vamos usar o XAMPP para fazer isso.

O XAMPP é um conjunto de soluções para servidores web usado para criar sites offline em um servidor web local. É uma ferramenta multiplataforma, portanto funciona no Windows, Mac e Linux. É comumente usado para instalar o WordPress em um computador local.

Aqui estão os passos para verificar o número de uma porta livre no Windows e no Linux – o processo será ligeiramente diferente no Mac.

  1. Clique no Menu Iniciar para iniciar o XAMPP.
  2. Clique no botão Netstat no lado direito do painel de controle.
Selecione o botão Netstat no Painel de Controle do XAMPP para ver todas as portas em uso.
  1. Você verá todas as portas em uso no seu computador. Verifique se a porta 80 está livre ou se está sendo usada por outro aplicativo.
Lista de portas utilizadas no Netstat
  1. Se a porta 80 já estiver sendo usada por outro aplicativo, escolha um número de porta livre, por exemplo, a porta 8080.

Em seguida, vamos nos conectar à porta correta usando o comando listen.

O comando listen é necessário para instruir o Apache HTTPd a escutar apenas endereços IP ou portas específicas. Se este comando não estiver presente no arquivo de configuração, seu servidor não será iniciado.

Aqui estão os passos para alterar a porta do Apache no XAMPP:

  1. Clique no Menu Iniciar para iniciar o XAMPP.
  2. Você verá o ícone do XAMPP na bandeja do sistema da sua barra de tarefas. Dê um duplo clique.
  3. A janela do painel de controle do XAMPP será exibida. Será exibida uma lista de todos os serviços em execução no momento.
  4. Clique no botão Stop ao lado de Apache.
Como parar o Apache no painel de controle do XAMPP
  1. Abra o explorador de arquivos e localize o arquivo httpd.conf na pasta config. Se você usa Windows, estará na pasta C:\xampp\apache\conf. Se você usa Linux, estará em bin/apache. No Mac, o caminho será Applications/XAMPP/xamppfiles/etc/httpd.conf.
  2. Abra o arquivo usando o Bloco de Notas ou qualquer outro editor de texto disponível. Em seguida, procure estas linhas dentro do arquivo:
Listen 80
ServerName localhost:80
  1. Se a porta 80 estiver livre, certifique-se de que o número da porta no comando Listen corresponda ao número da porta do localhost. Se outro aplicativo estiver usando a porta 80, substitua-a por um número de porta disponível. Neste exemplo, vamos alterá-lo para a porta 8080.
Listen 8080
ServerName localhost:8080
  1. Salve o arquivo. Será solicitada permissão administrativa; selecione Sim.
  2. Abra novamente o painel de controle do XAMPP e inicie o servidor web Apache.
  3. Acesse http://localhost:8080 ou https://127.0.0.1:8080/ para verificar se o localhost está funcionando.

Se você estiver usando o WAMP – um conjunto de soluções para o sistema operacional Windows – siga os passos abaixo para alterar a porta em execução.

  1. Clique com o botão direito do mouse na barra de tarefas e selecione Gerenciador de Tarefas.
  2. Clique em “Finalizar tarefa” para todas as instâncias do WAMP que ainda estiverem em execução.
  3. Em seguida, abra o explorador de arquivos e navegue até a pasta de configuração em C:\wamp\apache2\conf.
  4. Procure o arquivo de configuração do HTTPD. Abra-o com um editor de texto como o Bloco de Notas.
  5. Procure estas linhas dentro do arquivo:
Listen 80
ServerName localhost:80
  1. Se a porta 80 estiver livre, certifique-se de que o número da porta no comando listen corresponda ao número da porta do localhost. Se a porta 80 já estiver sendo usada por outro aplicativo, substitua o número por uma porta disponível.
Listen 8080
ServerName localhost:8080
  1. Salve o arquivo.
  2. Abra o WAMP novamente para verificar se o erro persiste.

4. Verifique se o Apache está em execução

Se o seu servidor web Apache não estiver em execução, você não conseguirá acessar o localhost.

Para verificar o status do seu Apache, o comando varia dependendo da distribuição que você utiliza.

Aqui está o comando para Debian ou Ubuntu:

sudo systemctl status apache2

E aqui está o comando para CentOS/RHEL/Fedora:

# systemctl status httpd

O resultado dessa verificação de status indicará se o seu servidor está em execução ou parado.

Se aparecer a mensagem de que o servidor está parado, tente solucionar o problema reiniciando-o com o seguinte comando.

Para Debian e Ubuntu:

sudo systemctl restart apache2

Para CentOS/RHEL/Fedora:

# systemctl restart httpd

O resultado do comando de reinicialização será semelhante a este:

* Restarting web server apache2  [ OK ]

Se a tentativa de reinicialização falhar, você receberá uma mensagem de erro. A mensagem pode variar dependendo da sua escolha de distribuição, mas seguirá esta linha:

apache2: unrecognized service
Failed to restart apache2.service: Unit apache.service failed to load: No such file or directory.

Se você vir essas mensagens de erro, tente reinstalar o serviço. Após certificar-se de que o servidor web está instalado corretamente, reinicie-o utilizando o comando correspondente.

5. Revise as configurações do navegador

As configurações do navegador também podem causar o erro 127.0.0.1 refused to connect, já que cada navegador lida de forma diferente com conexões, redirecionamentos e certificados de segurança.

Um caso comum acontece quando o navegador redireciona automaticamente endereços HTTP para HTTPS. Se o site local não tiver um certificado SSL válido — ou não tiver certificado algum — o resultado pode ser o erro “A conexão com localhost foi recusada” ou localhost recusou a conexão.

Se você estiver usando o navegador Chrome, siga estas etapas:

  1. Digite chrome://net-internals/#hsts na barra de endereços do seu navegador.
Configurações HSTS do Chrome.
  1. Localize “Delete domain security policies” e digite “localhost”.
Excluindo políticas de segurança de domínio no localhost.
  1. Reinicie o navegador.

Diferença entre “ERR_CONNECTION_REFUSED” e “ERR_CONNECTION_TIMEOUT

Ao tentar acessar o localhost, dois erros comuns podem aparecer: ERR_CONNECTION_REFUSED e ERR_CONNECTION_TIMEOUT. Apesar de parecidos, eles indicam problemas diferentes e exigem soluções distintas.

O erro “ERR_CONNECTION_REFUSED” no localhost indica que o servidor rejeitou a tentativa de conexão, enquanto “ERR_CONNECTION_TIMEOUT” indica que nada aconteceu e o cliente ainda está aguardando uma resposta.

Portanto, para resolver o problema “ERR_CONNECTION_REFUSED” no localhost, você precisa verificar o firewall, pois é ele que está rejeitando os pacotes de dados. Você também precisará verificar a diretiva Listen no arquivo httpd.conf e garantir que ela esteja configurada corretamente.

Entretanto, para resolver o erro “ERR_CONNECTION_TIMEOUT” no Chrome, você precisará verificar suas configurações de conexão, pois esse erro significa que o serviço não está funcionando corretamente ou não está instalado adequadamente.

Conclusão

O erro “A conexão com localhost foi recusada” (ou localhost refused to connect) é um problema comum ao trabalhar em servidores locais durante o desenvolvimento de projetos.

Ele geralmente acontece quando o firewall bloqueia a conexão, a porta usada está incorreta ou quando o Apache ou o navegador não estão configurados corretamente.

Existem cinco métodos para resolver o erro “localhost recusou a conexão”:

  • Desative temporariamente o firewall – Desligue o firewall para que ele não sinalize o projeto no seu localhost como malicioso e bloqueie o acesso.
  • Limpe o cache DNS – Remova os dados existentes do navegador.
  • Conecte usando a porta correta – Confirme se o Apache está rodando na porta 80 ou em outra porta configurada.
  • Certifique-se de que o Apache esteja em execução – Verifique também se o servidor web Apache está instalado corretamente.
  • Acesse as configurações do navegador e habilite conexões para sites sem certificado SSL, como o seu site de teste.

Esperamos que este guia tenha ajudado você a resolver o erro “localhost refused to connect” de forma rápida e prática.

Perguntas frequentes sobre o erro “A conexão com localhost foi recusada”

Qual é a alternativa ao localhost?

Uma alternativa ao localhost é usar o endereço IP do próprio computador como host. Você pode encontrá-lo nas configurações do sistema ou digitando ipconfig no Prompt de Comando (Windows) ou ifconfig no Terminal (macOS e Linux).

O que é o endereço IP do localhost?

O IP do localhost representa o próprio computador do usuário. Ele corresponde à interface de loopback da rede e normalmente usa o endereço 127.0.0.1, permitindo acessar serviços locais sem se conectar a uma rede externa.

Semua konten tutorial di website ini telah melalui peninjauan menyeluruh sesuai padrões editoriais e valores da Hostinger.

Author
O autor

Bruno Santana

Jornalista formado pela Universidade Federal da Bahia e Especialista em Marketing de Conteúdo na Hostinger, onde atuo na criação e otimização de artigos úteis, envolventes e criativos em áreas como desenvolvimento web e, marketing. Além disso, sou colaborador eventual do site MacMagazine e da editoria de cultura do Jornal A Tarde, fascinado por arte, culinária e tecnologia.