0 Compartilhamentos 294 Views 2 Comments

Protegendo downloads não-autorizados com .htaccess

20 de março de 2012

Esta é uma instrução muito simples que poderá proteger seus arquivos de downloads sem autorização. O código protege downloads nos formatos .zip e .rar mas poderá ser adaptado para proteger arquivos de imagens como jpg, png e outros.

Para proteger um o download de arquivos do tipo .zip e .rar, você deve criar uma pasta específica no servidor somente para armazenar o conteúdo, depois crie um arquivo do tipo ‘.htaccess’ e coloque dentro desta pasta. O arquivo ‘.htaccess’ deverá ter o seguinte conteúdo:

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^http://(.+.)?seusite.com/ [NC]
RewriteRule .*.(zip|rar)$ http://www.seusite.com/erro.php [L]

Dessa forma, o usuário não terá como baixar qualquer conteúdo sem autorização, por exemplo. Como funciona:

  1. digamos que alguém queira baixar algo em .zip que esteja num área restrita à usuários em seu site;
  2. Se normalmente ele digitar na barra de endereços www.seusite.com.br/arquivo.zip o download será efetuado mesmo que este arquivo esteja em uma área restrita!
  3. Com esse procedimento é bloqueado o acesso ao arquivo digitando na barra do navegador. O acesso ao arquivo só poderá ser possível se clicar em um link com sessão aberta, e este link de acesso ao arquivo deverá ficar na área restrita à usuários do seu site
  4. No código onde tem “seusite” informe o domínio do seu site, sem o “www” ou “.com”.
  5. Logo depois, em “http://www.seusite.com/erro.php“, informe uma url que leve à uma página de erro, onde será informado que o usuário não tem permissão para baixar o arquivo desejado, caso ele queira fazer o download, efetue o login ou cadastre-se. A mensagem fica ao seu critério
  6. Na parte do código onde tem “(zip|rar)” estão as extensões que serão bloqueadas caso haja tentativa de download. Você poderia até incluir outras extensões que desejar. Por exemplo (zip|rar|jpg|png|gif) e outras.
  7. Esse código também impede o chamado “HOTLINK”, que consiste no uso de imagens de sites sem autorização dos administradores.

Você pode se interessar

5 fatos que todo departamento de TI pode aprender com Fortnite
Artigos
7 visualizações
Artigos
7 visualizações

5 fatos que todo departamento de TI pode aprender com Fortnite

Carlos L. A. da Silva - 1 de julho de 2019

O Departamento de TI de uma empresa não é apenas um lugar onde os caras jogam Fortnite o dia inteiro. Grandes desastres podem vir de lá também...

Promoções de Jogos do Final de Semana (28/06)
Notícias
7 visualizações
Notícias
7 visualizações

Promoções de Jogos do Final de Semana (28/06)

Carlos L. A. da Silva - 28 de junho de 2019

Confira as melhores ofertas de jogos de PC para o final de semana.

FIREBASE Database na Prática com JAVASCRIPT PURO // Mão no Código #14
Vídeos
1,655 compartilhamentos6,806 visualizações
Vídeos
1,655 compartilhamentos6,806 visualizações

FIREBASE Database na Prática com JAVASCRIPT PURO // Mão no Código #14

Thais Cardoso de Mello - 27 de junho de 2019

Vamos mostrar na prática pra vocês como é SIMPLES DEMAIS manipular o Realtime Database (noSQL) do Firebase usando JavaScript puro e o SDK "marrrravilhoso" que o pessoal do Google Cloud criou.

2 Responses

  1. Sua rotina funciona legal, mas eu estou com um problema, se eu entro pela primeira vez no site e não me autentico, funciona perfeitamente, se eu coloco qualquer coisa depois da url, mesmo se tento acessar uma página não existente, e depois tento acessar algum arquivo protegido, o acesso é feito normalmente, como se houvesse uma seção, se eu dou um “refresh” na página, via “F5” ou mesmo pelo botão refresh do browser, o arquivo volta a ficar protegifo.

    Alguma pista do que pode estar acontecendo?

    Obrigado!

    Resposta

Deixe um Comentário

Your email address will not be published.

Mais publicações

Como baixar o novo Windows Terminal
Dicas
16 visualizações
16 visualizações

Como baixar o novo Windows Terminal

Carlos L. A. da Silva - 26 de junho de 2019
Libra: o que sabemos sobre a criptomoeda do Facebook
Artigos
11 visualizações
11 visualizações

Libra: o que sabemos sobre a criptomoeda do Facebook

Carlos L. A. da Silva - 25 de junho de 2019
WebAssembly // Dicionário do Programador
Vídeos
1,655 compartilhamentos6,809 visualizações
1,655 compartilhamentos6,809 visualizações

WebAssembly // Dicionário do Programador

Thais Cardoso de Mello - 24 de junho de 2019
Promoções de Jogos do Final de Semana (21/06)
Notícias
10 visualizações
10 visualizações

Promoções de Jogos do Final de Semana (21/06)

Carlos L. A. da Silva - 21 de junho de 2019