Como bloquear o acesso a seu site pelo .htaccess

Se você possui um site que é específico para sua equipe e não deseja que os usuários comuns tenham acesso a ele, neste artigo nós vamos te mostrar como bloquear o acesso a seu site através do arquivo .htaccess. Note que há várias variáveis de como realizar esse tipo de bloqueio, por exemplo, você pode bloquear o acesso a todo seu site, ou se preferir, apenas de arquivos, como o “wp-login.php”, que é o arquivo de login ao painel administrativo do WordPress.

Neste artigo nós vamos te mostrar como realizar essa configuração, também dar algumas dicas de quando ou onde ela é bem útil, além de dar exemplos de configurações, tanto para o bloqueio em todo o site, como também para arquivos específicos. Se é isso que você está buscando, vem com a gente neste artigo!

Cenários onde bloquear o acesso pode ser útil

Se você possui um site que é para ser acessado por todo o público, porém, instalou um outro site neste mesmo domínio, e este deve ter acesso restrito a funcionários, usuários autorizados, etc. Essa configuração é excelente, pois, dependendo de como você configurar, todo o acesso ao site/página será bloqueado, com exceção para a rede que você adicionar a lista de permissões.

Em um exemplo prático, vamos supor que o seu site é acessado através da URL “https://seusite.com.br”, porém, você possui uma área restrita no site, que é acessada através da URL “https://seusite.com.br/restrito”. Nesse cenário, você pode simplesmente bloquear o acesso para todos ao site “restrito”, e liberar apenas o IP da rede dos usuários que realmente podem acessar esse ambiente sem problemas.

Um outro caso é quando o seu site ainda está em construção, e sites em construção podem apresentar códigos, erros ou informações que o público não deveria ter, nesse caso, bloquear o acesso para todos, com exceção de você e/ou equipe responsável pela construção do site é também uma excelente opção. Ao bloquear o acesso de todos, os usuários que não tiverem o IP liberado receberão um erro 403, que significa que ele não tem permissão para acessar aquela página.

Como bloquear o acesso ao seu site

Agora que você já entendeu melhor sobre como o bloqueio funciona, e o principal, leu com atenção os avisos acima, siga os passos abaixo para bloquear o acesso de todo, com exceção dos usuários com IPs permitidos:

  1. Acesse o painel de controle da sua hospedagem (cPanel)
  2. Na seção Arquivos, clique na opção Gerenciador de arquivos
    Gerenciador de arquivos no cPanel
  3. Agora localize o diretório do seu site que você deseja ativar o bloqueio de acesso (geralmente a public_html)
    Arquivos no cPanel, public_html em destaque
  4. Procure pelo arquivo .htaccess do seu site, ao localizar o arquivo, clique com o botão direito, e depois em Edit. Note que esse é um arquivo oculto, caso não saiba como visualizar arquivos ocultos, clique aqui.
    Arquivo .htaccess no diretório do site
  5. Dentro do arquivo .htaccess, após a parte “# END WordPress”, coloque o código abaixo:
    ### Bloquear o acesso geral ###
    Require all denied
    ### IPS LIBERADOS: ###
    Require ip 123.213.231.132
    Require ip 132.231.213.123


    (Substitua os IPs usados como exemplo pelos IPs reais que você deseja liberar o acesso)
  6. Exemplo de como o código ficaria no arquivo:
    Código "Require" para Bloquear o acesso ao site
    Importante: Nesse exemplo, todos os usuários seriam impedidos de acessar todo o seu site, com exceção dos usuários com IP listados.
  7. Após colar o código, basta clicar em Salvar Alterações. Feito isso, o acesso ao site já deve estar limitado aos usuários com o IP liberado.
    Botão para Salvar Alterações do .htaccess

Outras formas de bloquear o acesso

No exemplo acima, o bloqueio é feito para todo o site, e estamos utilizando o comando “Require”, abaixo mostramos como bloquear o acesso apenas a arquivos, e também um outro comando, caso o seu servidor não reconheça o “Require”:

Forma alternativa de bloquear o acesso, diferente do “require”:

### Bloquear o acesso geral ###
Order Deny,Allow
Deny from all
### IPS LIBERADOS: ###
Allow from 123.213.231.132
Allow from 132.231.213.123
Apache
  • Exemplo de como ficaria o código dentro do arquivo:
    Bloquear o acesso com comando alternativo

Como bloquear apenas arquivos, e manter o acesso normal ao site:

### Bloquear o acesso geral ###
<FilesMatch "^(wp-login\.php)$">
    Require all denied
### IPS LIBERADOS: ###
    Require ip 123.213.231.132
    Require ip 132.231.213.123
</FilesMatch>
Apache
  • Exemplo de como o código ficaria dentro do arquivo:
    Bloquear acesso de arquivos
    A diferença é o uso do <FilesMatch>, onde nesse exemplo, estamos bloqueando o acesso ao arquivo wp-login.php, o que resulta, na prática, em impedir que os usuários consigam acessar a página de login do painel administrativo do WordPress. Apenas usuários com o IP liberado poderiam acessar essa página.

    Caso você deseje bloquear algum outro arquivo, é só alterar ou adicioná-lo dentro dos parênteses, como por exemplo: <FilesMatch “^(outro-arquivo\.php|outro-arquivo\.html)$”> (Para listar mais de um arquivo, você deve separar com o sinal: “ | ” (sem aspas))

    Se você optar por usar o comando “Order Deny,Allow” e bloquear apenas um arquivo, utilize a mesma estrutura, iniciando com o:
    <FilesMatch "^(arquivo\.php|outro-arquivo\.html)$">
    Order Deny,Allow
    Deny from all
    ### IPS LIBERADOS: ###
    Allow from 123.213.231.132
    </FilesMatch>

Você está precisando de ajuda?

Você está precisando de ajuda? Não se preocupe, saiba que sempre será um prazer te ajudar! Nossa equipe de suporte está disponível à você! Por isso, caso precise de auxilio, saiba que pode contar conosco! Envie-nos um ticket para que nosso time de especialista consiga lhe auxiliar da melhor maneira possível. Você precisa de ajuda de como abrir um ticket? Leia esse artigo.


Conseguimos te ajudar?

Loading spinner
Encontrou sua resposta?