Erro 403 Forbidden: 13 soluções para proprietários de sites e desenvolvedores

Erro 403 Forbidden: 13 soluções para proprietários de sites e desenvolvedores

O erro 403 Forbidden significa que o servidor entende sua solicitação, mas recusa o acesso devido a problemas de permissão, configuração, segurança ou autorização. Para começar, faça algumas verificações rápidas: limpe o cache e os cookies do navegador, desative a VPN e confira se o seu endereço IP está bloqueado.

Os proprietários de websites devem, então, verificar as possíveis causas no próprio site, incluindo malware, conflitos entre plugins do WordPress, configurações de CDN, regras do .htaccess, permissões de arquivos e diretórios, propriedade dos arquivos, arquivos de índice ausentes, registros DNS, nameservers, proteção contra hotlinks e bloqueios de endereços IP.

Já os desenvolvedores e usuários de APIs devem investigar como a solicitação é autenticada e autorizada. Verifique os cabeçalhos de autorização, bearer tokens, escopos do OAuth, tokens expirados, funções do IAM, limites de requisições da API, políticas de CORS, restrições de IP ou de rede e todos os cabeçalhos da solicitação e da resposta para identificar por que o servidor está rejeitando uma solicitação que, de outra forma, seria válida.

Como corrigir o erro 403 Forbidden como proprietário de um website

Proprietários de websites podem corrigir um erro 403 Forbidden verificando se dados do navegador, restrições de IP, arquivos do site, configurações do servidor, configurações de DNS ou regras de segurança estão bloqueando o acesso.

Comece com verificações rápidas, como limpar o cache e os cookies do navegador, desativar a VPN e conferir se o endereço IP está bloqueado. Depois, analise possíveis causas no site, incluindo malware, conflitos entre plugins do WordPress, configurações de CDN, regras do .htaccess, permissões e propriedade dos arquivos, arquivos de índice ausentes, registros A, nameservers e proteção contra hotlinks.

1. Limpe o cache e os cookies do navegador

O cache do navegador pode armazenar arquivos desatualizados que entram em conflito com as permissões atualizadas do site e causam um erro 403. Já os cookies guardam dados de login e preferências e, quando ficam corrompidos ou desatualizados, podem bloquear o acesso a algumas páginas.

Primeiro, limpe o cache do navegador e os cookies para remover dados desatualizados ou que estejam causando conflitos. Isso faz com que o navegador busque arquivos atualizados no servidor, o que pode resolver problemas de acesso. No entanto, depois você precisará fazer login novamente na maioria dos sites.

Veja como fazer isso no Google Chrome. Os passos são semelhantes no Firefox e no Safari:

  1. Clique no ícone de três pontos no canto superior direito e selecione Configurações.
  2. Acesse Privacidade e segurança → Excluir dados de navegação.
  3. Em Período, selecione Todo o período.
  4. Marque Cookies e outros dados do site e Imagens e arquivos armazenados em cache.
  5. Clique em Excluir dados para removê-los.

Depois de limpar o cache e os cookies, acesse o site novamente e tente fazer login para verificar se o erro 403 Forbidden foi resolvido.

2. Desative temporariamente a VPN

Uma rede virtual privada (VPN) redireciona sua conexão por servidores remotos. No entanto, alguns sites bloqueiam esses servidores por motivos de segurança ou exigências regionais, o que pode resultar em um erro 403.

Desative temporariamente sua VPN e tente acessar o site novamente. Se isso resolver o problema, mude para outro servidor VPN ou entre em contato com o provedor da VPN para obter orientação.

Se essas verificações simples não resolverem o problema, siga para as próximas etapas, que envolvem verificar a segurança do site.

3. Faça uma varredura em busca de malware

O malware pode inserir código malicioso nos arquivos do seu site. Isso pode alterar permissões ou regras de configuração, restringir o acesso e gerar uma resposta 403 Forbidden.

Faça uma varredura no site em busca de malware para identificar e remover qualquer código malicioso. Nos planos de hospedagem de site da Hostinger, você pode usar o Detector de Malware integrado ao hPanel sem precisar de ferramentas de terceiros:

  1. Acesse o painel do seu site e, na barra lateral esquerda, selecione Segurança → Detector de Malware.
  2. Se nenhum malware for encontrado, você verá o nome do seu plano de hospedagem e o tempo desde a última verificação.
  1. Caso contrário, a ferramenta mostrará os arquivos infectados e as ações realizadas para limpá-los.

Para aumentar a proteção, use plugins confiáveis de detecção de malware para WordPress, como Wordfence ou Solid Security. Essas ferramentas detectam ameaças em tempo real e bloqueiam atividades suspeitas antes que causem outros problemas.

Se a varredura detectar infecções, limpe ou substitua os arquivos afetados. Depois, verifique novamente o site para confirmar se o erro 403 desapareceu.

4. Desative os plugins do WordPress

Plugins do WordPress com falhas ou incompatíveis podem alterar as configurações de permissão. Quando isso acontece, algumas páginas podem ficar inacessíveis e exibir um erro 403 Forbidden.

Desative os plugins do WordPress para descobrir se algum deles está causando o problema. Você pode fazer isso pelo painel do WordPress ou diretamente pelo hPanel, se for cliente da Hostinger:

  1. No painel do seu site, acesse WordPress → Segurança.
  2. Role a página até a seção Plugins instalados.
  3. Desative cada plugin individualmente e verifique o site depois de cada alteração.

Se preferir um método manual, você pode desativar todos os plugins de uma só vez pelo gerenciador de arquivos ou por um cliente FTP:

  1. Acesse a pasta wp-content dentro de public_html.
  2. Renomeie a pasta plugins para disabled-plugins. Isso desativará todos os plugins de uma vez.
  1. Acesse o site. Se o erro desaparecer, um dos plugins é a causa.
  2. Renomeie a pasta novamente para plugins para reativá-los.
  3. No painel do WordPress, desative os plugins um por um para identificar qual deles está causando o problema.

Depois de identificar o plugin responsável pelo erro, atualize-o ou remova-o completamente.

Se as correções relacionadas à segurança não funcionarem, as próximas etapas envolvem configurações do servidor e ajustes nos arquivos.

5. Desative temporariamente a CDN

Uma rede de distribuição de conteúdo (CDN) armazena cópias em cache do seu site em vários servidores. Se o cache estiver desatualizado ou mal configurado, a CDN pode gerar um código de status 403.

Se o seu site usa uma CDN, desative-a temporariamente para verificar se é ela que está retornando o erro, e não o servidor de origem. A Hostinger ativa automaticamente a CDN da Hostinger no plano de hospedagem Business e superiores. Para desativá-la no hPanel:

  1. Acesse Desempenho → CDN.
  2. Na seção de status da CDN, clique em Desativar.
  1. Se isso resolver o problema, mantenha a CDN desativada temporariamente e entre em contato com nosso suporte para obter mais orientações sobre como resolver o problema.

6. Restaure o arquivo .htaccess

Um arquivo .htaccess corrompido ou mal configurado pode aplicar regras incorretas de reescrita ou de acesso no servidor, bloqueando visitantes e gerando um erro 403 Forbidden.

Se alterações recentes ou algum malware tiverem modificado o arquivo .htaccess, substitua-o por uma versão limpa. Se você usa a Hostinger, pode criar um novo arquivo .htaccess pelo gerenciador de arquivos do hPanel:

  1. No painel do seu site, acesse Arquivos → Gerenciador de arquivos.
  2. Abra o diretório public_html e localize o arquivo .htaccess.
  3. Clique com o botão direito no arquivo e selecione Download para criar um backup.
  1. Exclua o arquivo .htaccess atual.
  2. Clique em Novo arquivo e nomeie-o como .htaccess, sem nenhuma extensão.
  1. Cole o código padrão abaixo e salve o arquivo:
# Enable URL Rewriting
RewriteEngine On
# Rewrite rule to redirect requests to index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]

Em sites WordPress, você também pode regenerar o arquivo sem usar o gerenciador de arquivos:

  1. Acesse o painel do WordPress.
  2. Vá para Configurações → Links permanentes.
  3. Clique em Salvar alterações sem modificar nenhuma configuração.

Depois de restaurar o .htaccess, tente acessar o site novamente. Se o erro desaparecer, é provável que o arquivo tenha sido a causa.

7. Redefina as permissões de arquivos e diretórios

As permissões de arquivos controlam o acesso aos dados do seu site. Quando as permissões são muito restritivas, o servidor bloqueia o acesso por motivos de segurança, o que pode resultar em um erro 403 Forbidden.

Se as permissões estiverem incorretas, você pode redefini-las com apenas um clique usando a ferramenta integrada Restaurar permissões de arquivos da Hostinger:

  1. No hPanel, procure por Restaurar permissões de arquivos.
  2. Marque a caixa de seleção para confirmar e clique em Executar. A ferramenta definirá automaticamente as permissões padrão para todos os arquivos e pastas do site.

Como alternativa, você pode redefinir as permissões manualmente usando um cliente FTP, como o FileZilla:

  1. Conecte o FileZilla ao seu site.
  2. Clique com o botão direito no diretório public_html e selecione Atributos de arquivos.
  1. No campo Valor numérico, insira 755 para os diretórios. Isso permite que o proprietário leia, grave e execute os arquivos, mas impede que outras pessoas os modifiquem.
  1. Selecione Aplicar apenas aos diretórios e clique em OK.
  2. Para os arquivos, repita o processo, insira 644 no campo Valor numérico e selecione Aplicar apenas aos arquivos. Isso permite que o proprietário leia e grave os arquivos, enquanto os demais usuários podem apenas lê-los.

Depois de aplicar as permissões corretas, acesse o site novamente para verificar se o erro 403 desapareceu.

8. Ajuste a propriedade dos arquivos

Em ambientes Linux e na Hospedagem VPS, as configurações de propriedade determinam quais usuários podem modificar ou executar arquivos. Se a propriedade estiver atribuída incorretamente, o acesso a determinados recursos pode ser negado, causando um erro 403.

Essa solução é mais técnica, pois exige uma conexão ao servidor via SSH e a execução de comandos Linux. Siga estas etapas para verificar e ajustar a propriedade dos arquivos no Linux:

  1. Conecte-se ao servidor usando um cliente SSH, como o PuTTY.
  2. Para verificar a propriedade de um arquivo, execute:
ls -l [nome do arquivo]

A saída será semelhante a:

-rwxrw-rw- 1 [owner][group] 22 Sep 22 10:00 filename.txt
  1. Os campos owner e group devem corresponder ao nome de usuário da sua conta de hospedagem. Caso contrário, use o comando chown para corrigir:
chown [owner][:group] [nome do arquivo]

Por exemplo, se o seu nome de usuário for John, use:

chown John filename.txt

9. Envie uma página de índice

Se o seu site não tiver uma página de índice, como index.html ou index.php, os usuários podem receber um erro 403 Forbidden ao tentar acessá-lo.

Isso acontece porque o servidor web espera carregar uma página de índice por padrão. Sem esse arquivo, o servidor bloqueia o acesso.

Primeiro, confira se a página inicial se chama index.html ou index.php. Caso contrário, renomeie o arquivo pelo cliente FTP ou gerenciador de arquivos.

Se a página de índice estiver ausente, crie uma. Veja como:

  1. Acesse o diretório do seu site.
  2. Envie ou crie um arquivo index.html ou index.php dentro do diretório public_html.
  3. Depois do upload, acesse o site novamente para verificar se a página inicial é carregada corretamente.

Se o problema continuar, há mais duas etapas de diagnóstico relacionadas às configurações do domínio que você pode testar.

10. Verifique o registro A

O registro A é um tipo de registro do Sistema de Nomes de Domínio (DNS) que aponta o domínio para o endereço IP correto. Se o registro A do seu domínio apontar para o IP errado, o acesso dos usuários ao site pode ser negado, resultando em uma resposta 403 Forbidden.

Se o seu site estiver hospedado na Hostinger, primeiro descubra o endereço IP acessando hPanel → Plano de hospedagem → Detalhes do plano.

Em seguida, verifique se o registro A do domínio está apontando corretamente seguindo estas etapas:

  1. Acesse Avançado → Editor de zona DNS.
  2. Localize os registros A na coluna Tipo.
  3. Confira os endereços IP exibidos na coluna Conteúdo.
  4. Se o registro A não apontar para o endereço IP correto, clique em Editar para modificá-lo e depois em Atualizar.

Lembre-se de que editar o registro A pode afetar serviços ou subdomínios que dependem dele.

Se isso não resolver o erro ou causar interrupções, considere criar um novo registro A:

  1. Na mesma página DNS / Nameservers, role para cima até a seção Gerenciar registros DNS.
  2. Selecione A em Tipo e insira o endereço IP correto no campo Aponta para.
  3. Clique em Adicionar registro para criar o novo registro A.

11. Atualize os nameservers

Quando você troca de provedor de hospedagem, os registros DNS do domínio precisam ser atualizados para apontar para os nameservers corretos. Se essa etapa for ignorada, os usuários continuarão sendo direcionados para o provedor antigo, o que pode causar problemas de acesso, como o erro 403 Forbidden.

Se o seu domínio foi registrado na Hostinger, veja como atualizar os nameservers do domínio:

  1. Acesse Domínios → Portfólio de domínios → Gerenciar ao lado do seu domínio.
  2. Selecione DNS / Nameservers → Registros DNS.
  3. Escolha Usar nameservers da Hostinger (recomendado) se o seu site estiver hospedado na Hostinger ou Alterar nameservers se estiver hospedado em outro provedor.
  4. Preencha os dados corretos dos nameservers e clique em Salvar.

12. Desative ou verifique a proteção contra hotlinks

A proteção contra hotlinks impede que outros sites incorporem seus arquivos, mas uma regra mal configurada pode bloquear seu próprio domínio e gerar erros 403.

Esse problema costuma ocorrer quando imagens em JPG, PNG ou WebP retornam um erro 403 enquanto o restante do site carrega normalmente. Esse é um forte indício de que a proteção contra hotlinks está configurada incorretamente.

Primeiro, confira as configurações de proteção contra hotlinks no painel de controle da sua hospedagem. Na Hostinger, acesse Arquivos → Proteção contra hotlinks e verifique se o seu domínio está na lista de permissões. Adicione todas as variações mais comuns:

  • seudominio.com
  • www.seudominio.com
  • as versões de ambos com http e https

Se alguma versão estiver ausente, as solicitações do seu próprio site podem ser bloqueadas.

Se você usa .htaccess, procure regras como:

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^https?://(www\.)?yourdomain.com [NC]
RewriteRule \.(jpg|jpeg|png|gif|webp)$ - [F]

Verifique se o seu domínio está incluído nas condições da regra. Caso contrário, remova ou atualize a regra.

Se você usa o Cloudflare, acesse Scrape Shield → Hotlink Protection e desative temporariamente o recurso para confirmar se ele está causando o problema.

Depois de fazer as alterações, limpe o cache do navegador e acesse diretamente os URLs das imagens para testá-los. Se elas carregarem corretamente, a proteção contra hotlinks era a causa do erro 403.

13. Verifique se o seu endereço IP está bloqueado

Se você recebe um erro 403 enquanto outras pessoas conseguem acessar o site normalmente, é provável que seu endereço IP esteja bloqueado por um firewall, plugin de segurança ou regra do servidor.

Esse tipo de erro 403 afeta um usuário específico e costuma ocorrer devido a um número excessivo de solicitações, tentativas de login malsucedidas ou filtros de segurança que identificam seu IP como suspeito.

Comece confirmando se o problema está no seu IP. Acesse o site por outra rede, por exemplo, trocando o Wi-Fi pelos dados móveis do celular. Se o site carregar normalmente na outra rede, seu endereço IP atual está bloqueado.

Em seguida, descubra seu endereço IP atual usando uma ferramenta de consulta de IP e verifique se ele aparece no painel de controle da sua hospedagem. Na Hostinger, acesse Segurança → Gerenciador de IP e confira a lista de IPs bloqueados. Se o seu IP estiver nela, remova-o e salve as alterações.

Se você usa um plugin de segurança do WordPress, como Wordfence ou Solid Security, o bloqueio pode ter sido aplicado por ele. Se não conseguir acessar o painel, acesse o site via FTP ou gerenciador de arquivos e desative temporariamente o plugin renomeando a pasta correspondente. Depois, faça login novamente e remova o bloqueio de IP nas configurações do plugin.

Verifique também as regras de firewall no nível da CDN ou do servidor. Por exemplo, o WAF (Web Application Firewall) do Cloudflare pode bloquear endereços IP ou regiões específicas com base em regras personalizadas ou configurações de proteção contra bots.

Se o erro 403 persistir apenas para o seu IP, mas não para os demais usuários, o problema quase sempre está relacionado ao bloqueio de IP, e não às permissões de arquivos ou à configuração do servidor.

Como corrigir o erro 403 Forbidden como desenvolvedor ou usuário de API

Um erro 403 Forbidden em APIs e sistemas de back-end geralmente significa que a solicitação é válida, mas não tem a autorização, as permissões ou a configuração necessárias.

Ao contrário dos erros 403 em sites causados por permissões de arquivos ou plugins, as respostas 403 encontradas em contextos de desenvolvimento geralmente estão relacionadas a cabeçalhos de autenticação, tokens de acesso, políticas do IAM ou restrições de API. A solução depende de como a solicitação está estruturada e de como o servidor valida o acesso.

As seções abaixo apresentam as causas mais comuns de erros 403 em APIs e sistemas de back-end, além de maneiras práticas de diagnosticá-los e resolvê-los.

1. Verifique os cabeçalhos de autorização e os bearer tokens

Um cabeçalho Authorization ausente ou formatado incorretamente é uma das causas mais comuns de erros 403 em APIs.

A maioria das APIs exige o envio de um token de autenticação válido no cabeçalho Authorization. Se o cabeçalho estiver ausente, tiver um formato incorreto ou usar o esquema errado, o servidor rejeitará a solicitação mesmo que o endpoint exista.

Por exemplo, uma solicitação correta geralmente tem este formato:

curl -H "Authorization: Bearer YOUR_ACCESS_TOKEN" https://api.example.com/user

Verifique se:

  • O nome do cabeçalho é exatamente Authorization.
  • O token usa o formato correto, geralmente Bearer <token>.
  • Não há espaços extras nem prefixos ausentes.

Se você usa uma aplicação front-end ou um SDK, inspecione a solicitação na aba Network do navegador para confirmar se o cabeçalho está sendo enviado corretamente.

2. Verifique o escopo do OAuth

Mesmo um token de acesso válido pode retornar um erro 403 se não incluir os escopos do OAuth necessários para o recurso solicitado.

As APIs costumam restringir o acesso com base no escopo, ou seja, nas permissões associadas ao token, como read:user, write:repo ou email. Se o token não tiver o escopo necessário, o servidor reconhecerá sua identidade, mas negará acesso à ação específica.

Por exemplo, uma solicitação à API do GitHub pode falhar se o token não incluir o escopo correto:

curl -H "Authorization: Bearer YOUR_TOKEN" https://api.github.com/user/repos

Consulte a documentação da API para confirmar quais escopos são necessários para o endpoint. Depois:

  • Gere novamente o token com os escopos corretos.
  • Atualize o fluxo OAuth para solicitar as permissões necessárias.

Se a API retornar um corpo de resposta, procure termos como insufficient_scope ou forbidden. Eles são fortes indícios de que o problema está no escopo.

3. Renove ou atualize tokens expirados

Um token de acesso expirado ou inválido pode gerar um erro 403 mesmo que todos os outros aspectos da solicitação estejam corretos.

Muitas APIs usam tokens de acesso de curta duração, normalmente de 15 a 60 minutos, por motivos de segurança. Quando o token expira, o servidor pode retornar um código 403 em vez de 401, principalmente se o token ainda estiver presente, mas não for mais válido.

Para corrigir o problema, gere um novo token de acesso ou use um fluxo de refresh token. Um fluxo típico do OAuth tem este formato:

curl -X POST https://api.example.com/oauth/token \
-d "grant_type=refresh_token" \
-d "refresh_token=YOUR_REFRESH_TOKEN"

Na sua aplicação:

  • Armazene os refresh tokens com segurança.
  • Atualize automaticamente os tokens de acesso antes que expirem.
  • Trate adequadamente os erros de renovação dos tokens.

Se você não souber se a expiração é a causa, decodifique o token, no caso de JWTs, e verifique o campo exp. Ele mostra a data e a hora exatas da expiração.

4. Audite as políticas do IAM e as funções de acesso

Um erro 403 costuma ocorrer quando a identidade autenticada não tem as permissões necessárias definidas nas políticas do IAM ou nas funções de acesso.

Em ambientes de nuvem como AWS, Google Cloud ou Azure, o acesso é controlado por políticas baseadas em funções. Mesmo com credenciais válidas, a solicitação será negada se a função atribuída não permitir a ação específica.

Por exemplo, na AWS, uma função Lambda pode retornar um erro 403 se sua função de execução não tiver a permissão necessária:

{
"Effect": "Allow",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::your-bucket/*"
}

Se essa política estiver ausente, qualquer solicitação de leitura do bucket do S3 falhará com um erro 403.

Para corrigir erros 403 relacionados ao IAM:

  • Verifique qual identidade, seja usuário, função ou conta de serviço, está fazendo a solicitação.
  • Revise as políticas associadas para identificar ações ausentes, como s3:GetObject ou lambda:InvokeFunction.
  • Confira se o ARN do recurso corresponde exatamente ao bucket, à função ou ao endpoint da API.

No Google Cloud, verifique as funções do IAM atribuídas à conta de serviço. No Azure, confira as permissões de RBAC (Role-Based Access Control) no grupo de recursos ou no nível do serviço.

Se a resposta da API incluir mensagens como AccessDenied ou not authorized to perform this action, o problema quase sempre está relacionado às permissões.

5. Diferencie o erro 403 do 429 causado por limite de requisições

Algumas APIs retornam um erro 403 em vez de 429 (Too Many Requests) quando você ultrapassa os limites de requisições.

Embora 429 seja o código de status padrão para esse tipo de limitação, muitas APIs, incluindo implementações antigas ou personalizadas, usam 403 para bloquear novas solicitações quando a cota é excedida. Isso pode parecer um problema de permissão quando, na verdade, o limite de uso foi atingido.

Se você estiver enviando várias solicitações em pouco tempo, inspecione os cabeçalhos e o corpo da resposta. Uma resposta causada por limite de requisições costuma incluir:

  • Um cabeçalho Retry-After indicando quando você pode tentar novamente.
  • Termos como rate limit, quota exceeded ou too many requests.

Por exemplo:

HTTP/1.1 403 Forbidden
Retry-After: 60

Para resolver o problema:

  • Reduza a frequência das solicitações implementando throttling.
  • Use backoff exponencial entre as novas tentativas.
  • Verifique as cotas da API e faça upgrade do plano, se necessário.

Se o erro desaparecer depois de algum tempo ou após você reduzir o volume de solicitações, o problema está no limite de requisições, e não na autenticação ou nas permissões.

6. Verifique erros 403 relacionados ao CORS

Um erro 403 em solicitações feitas pelo navegador pode ocorrer quando o servidor bloqueia solicitações entre origens devido a cabeçalhos CORS ausentes ou mal configurados.

O CORS (Cross-Origin Resource Sharing) controla se o navegador permite solicitações feitas a partir de outro domínio. Se o servidor não incluir o cabeçalho Access-Control-Allow-Origin correto, o navegador poderá bloquear a solicitação e, em alguns casos, exibir um erro 403.

Isso costuma acontecer durante solicitações de preflight (OPTIONS). Se o servidor rejeitar essa verificação, a solicitação principal nem chega a ser enviada.

Para diagnosticar:

  • Abra o DevTools e acesse a aba Network.
  • Procure uma solicitação OPTIONS antes da solicitação principal.
  • Verifique se a resposta inclui cabeçalhos como:
    • Access-Control-Allow-Origin
    • Access-Control-Allow-Methods
    • Access-Control-Allow-Headers

Exemplo de uma solicitação que falha:

Origin: https://yourapp.com

Se o servidor não permitir explicitamente essa origem, a solicitação será bloqueada.

Para corrigir:

  • Configure o servidor para permitir sua origem ou use * para APIs públicas.
  • Garanta que as solicitações de preflight retornem status 200 com os cabeçalhos corretos.
  • Verifique se cabeçalhos de autenticação, como Authorization, estão incluídos em Access-Control-Allow-Headers.

Se a mesma solicitação funcionar com curl, mas falhar no navegador, o problema quase sempre está relacionado ao CORS.

7. Teste em outro endereço IP ou rede

Um erro 403 pode ocorrer quando uma API bloqueia seu endereço IP, sua região, sua VPN ou a rede do data center, em vez das suas credenciais.

Isso é comum em APIs protegidas por firewalls, sistemas de detecção de fraude ou Web Application Firewalls (WAFs). O token pode ser válido, mas a solicitação é rejeitada porque vem de uma faixa de IP bloqueada ou de uma localização não permitida.

Teste a mesma solicitação em outra rede:

curl -H "Authorization: Bearer YOUR_TOKEN" https://api.example.com/resource

Depois, repita o teste usando:

  • uma máquina local em vez de um servidor
  • um hotspot móvel em vez do Wi-Fi do escritório
  • outra região de nuvem
  • uma conexão sem VPN

Se a solicitação funcionar em uma rede, mas falhar em outra, verifique as listas de IPs permitidos, as regras do firewall, as restrições geográficas e os logs do WAF.

Para APIs protegidas pelo Cloudflare ou por CDNs semelhantes, consulte os eventos de segurança para verificar se a solicitação foi bloqueada antes de chegar ao servidor de origem. Se sua aplicação roda na AWS, no Google Cloud ou no Azure, confirme se o provedor da API permite solicitações provenientes das faixas de IP dos data centers desses serviços.

Esse teste ajuda a distinguir problemas de autorização de bloqueios relacionados à rede.

8. Inspecione a solicitação e a resposta completas

A maneira mais rápida de diagnosticar um erro 403 relacionado a uma API é inspecionar toda a solicitação e a resposta, incluindo os cabeçalhos, códigos de status e o corpo da resposta.

Uma resposta 403 geralmente traz pistas sobre a causa do problema, como problemas de autenticação ou de permissões, limites de requisições, CORS, bloqueio de IP ou regras do WAF. Não se baseie apenas no código de status. Confira também a mensagem de erro exata retornada pelo servidor.

Use curl -i para exibir os cabeçalhos da resposta:

curl -i -H "Authorization: Bearer YOUR_TOKEN" https://api.example.com/resource

Procure sinais como:

  • WWW-Authenticate → problema de autenticação ou token
  • Retry-After → limite de requisições
  • Access-Control-Allow-Origin → configuração de CORS
  • X-RateLimit-Remaining → status da cota
  • Server: cloudflare → bloqueio no nível da CDN ou do WAF

Confira também o corpo da resposta. Mensagens como insufficient_scope, AccessDenied, quota exceeded, origin not allowed ou blocked by security policy geralmente indicam a causa exata.

Se a solicitação funcionar em uma ferramenta, mas falhar em outra, compare as duas linha por linha. Diferenças nos cabeçalhos, métodos, origem, endereço IP ou formato do token costumam explicar por que uma solicitação funciona e a outra retorna um erro 403.

Principais aprendizados

Para solucionar o erro 403 Forbidden, é preciso identificar onde o acesso está sendo bloqueado: no navegador, nos arquivos do site, na configuração do servidor, nas configurações de DNS, nas regras de segurança ou na camada de autorização da API.

Comece com verificações rápidas. Limpe o cache e os cookies do navegador, desative a VPN e confira se o seu endereço IP está bloqueado para descartar problemas no navegador, na conexão ou na rede.

Em seguida, os proprietários de websites devem verificar as possíveis causas no próprio site. Faça uma varredura em busca de malware, desative plugins conflitantes do WordPress, restaure o arquivo .htaccess, redefina as permissões dos arquivos, verifique a propriedade dos arquivos, envie uma página de índice válida, confira o registro A do domínio, atualize os nameservers e revise as configurações da CDN ou da proteção contra hotlinks.

Desenvolvedores e usuários de APIs devem analisar os detalhes de autenticação e autorização da solicitação. Verifique os cabeçalhos de autorização, bearer tokens, escopos do OAuth, tokens expirados, políticas do IAM, limites de requisições, restrições de CORS, bloqueios de IP ou de rede e todos os cabeçalhos da solicitação e da resposta.

Se o erro 403 Forbidden persistir, verifique se há arquivos ou diretórios ocultos, consulte os logs de erros do servidor e entre em contato com seu provedor de hospedagem. Informe a URL afetada, a data e o horário do erro, o endereço IP e a mensagem de erro.

Todo o conteúdo dos tutoriais deste site segue os rigorosos padrões editoriais e valores da Hostinger.

Author
O autor

Faradilla Ayunindya

Faradilla, mais conhecida como Ninda, tem 10 anos de experiência como linguista e 5 anos como Especialista em Marketing de Conteúdo na Hostinger. Ela gosta de acompanhar as tendências em tecnologia e de ajudar as pessoas a resolver seus problemas. No tempo livre, Ninda gosta de estudar idiomas e ciências da vida, além de assistir a vídeos de animais. Conecte-se com ela no LinkedIn.

O que dizem nossos clientes

Comentários

54 responses

Write a respond

Por gentileza, preencha os campos solicitados.Marque o campo de aceitação da privacidade.Preencha os campos necessários e marque a opção de aceitar termos de privacidade.

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Thank you! Your comment has been successfully submitted. It will be approved within the next 24 hours.
Author
Pablo Amorim

December 29 2017

Obrigado... Salvaram a minha vida!

Author
Fabrício Santos

December 06 2018

Muitooo Obrigado mesmo! Salvou o meu site! Estou muito grato de verdade!

Author
Multisciente

March 26 2019

Olá, E quando acontece na tradução de tema com o plugin "Loco Translate" e aperta "Save" e da mensagem de erro: "Error 403 Forbidden. Check console output for debugging information". O que faço? Obs: Isso não acontece no localhost (dá tudo certo) e sim no domínio hospedado.

Author
manuel ernesto

September 10 2019

muito bom bastante força para continuar!

Author
Solange Martins

April 29 2020

Meu nome é Solange Martins Pelo amor de Deus... me ajudem, por favor??? Estou tentando fazer o maldito login do aplicativo CAIXA TÊM e... depois de várias esperas de 20 minutos aparece esse termo em Inglês FORBIDDEN!!! Como eu faço prá sair dessa??? Agradeço pela ajuda

Author
Ney

August 03 2020

A melhor solução. No meu caso, resolveu assim: desativei o avast secure line, e resolveu. Esse avast trava tudo. Até a memoria do PC. Pode ser que aconteça com outros antivírus no caso de vocês.

Author
lar

September 11 2020

10

Author
Cristiane

July 31 2021

Nao consigo acessar o gerenciador de arquivos. O sistema nao reconhece a minha senha.

Author
Eduardo

September 27 2021

Show de bola! Funcionou perfeitamente. Bem didática e objetiva. Parabéns!

Author
Karolainy

December 11 2021

Não consigo entrar em sites importantes

Author
Carlos Eduardo da silveira

January 14 2022

Gostei muito

Author
Everton

April 05 2022

Ótimo conteúdo resolveu o meu problema

Author
Welligton Luis Pinto da Silva

July 01 2022

Meu app tá com erro 403. todo tempo isso falta de respeito comigo

Author
Ronaldo harte Mota dos santos

July 19 2022

Como desbloquear o FGTS caixa

Author
Marisa de Castro

August 08 2022

Não consigo acessar o caixa tem

Author
Jane kelly Oliveira Souza

August 23 2022

Tá aparecendo isso no meu caixa tem e eu quero resolver isso porque está aparecendo na hora que eu entro no Meu Caixa tem

Author
Catia

August 24 2022

Ola. Mas o erro aparece no app do .gov e não no site. Há meses Já apaguei e reinstalei e de nada adiantou Uso IOS

Author
Maria Eliane da sulidade soares

October 15 2022

Erro no meu App

Author
Taiane de Souza silva

April 12 2023

Não tô conseguindo abrir meu caixa tem

Author
ROMULO VIEIRA MENDES CAMELO

May 23 2023

Como fazer pra meu aplicativo do FGTS

Author
Gleycilane Vinhal Barreto

June 05 2023

O seu banco não quer dar no meu celular

Author
Wedison

June 30 2023

Muto bom mesmo

Author
Giovanny

November 08 2023

Estou tentando apontar um domínio que tenho no cloudflare mas está dando esse erro da mesma forma. Já acessei o htacess e coloquei a lista de ip e mesmo assim não adiantou.

Author
Leandro

May 24 2024

Estou tentando entrar no site “Cegid” aqui do Brasil , não estou conseguindo acessar nem pelo meu computador, nem pelo celular meu e da minha esposa. Só que ao mesmo tempo um primo meu que está na Bélgica, está conseguindo acessar normalmente. Aparece o 403 Forbidden. Como eu corrijo isso??