0 Compartilhamentos 286 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

TypeScript // Dicionário do Programador
Vídeos
1,655 compartilhamentos6,807 visualizações
Vídeos
1,655 compartilhamentos6,807 visualizações

TypeScript // Dicionário do Programador

Thais Cardoso de Mello - 18 de março de 2019

TypeScript é o termo falado nesse Dicionário do Programador, conheça mais sobre o assunto.

Promoções de Jogos do Final de Semana (15/03)
Notícias
10 visualizações
Notícias
10 visualizações

Promoções de Jogos do Final de Semana (15/03)

Carlos L. A. da Silva - 15 de março de 2019

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

Mega Bate-Papo com o Programador BR (feat. Igor Oliveira) // CDF Entrevista
Vídeos
1,655 compartilhamentos6,812 visualizações
Vídeos
1,655 compartilhamentos6,812 visualizações

Mega Bate-Papo com o Programador BR (feat. Igor Oliveira) // CDF Entrevista

Thais Cardoso de Mello - 14 de março de 2019

Batemos um papo muito divertido e informativo com o Igor Oliveira (do canal Programador BR).

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

World Wide Web completa 30 anos!
Notícias
12 visualizações
12 visualizações

World Wide Web completa 30 anos!

Carlos L. A. da Silva - 12 de março de 2019
Ada Lovelace: o cérebro que nunca morre
Artigos
134 visualizações1
134 visualizações1

Ada Lovelace: o cérebro que nunca morre

Carlos L. A. da Silva - 12 de março de 2019
Scrum // Dicionário do Programador
Vídeos
14 visualizações
14 visualizações

Scrum // Dicionário do Programador

Thais Cardoso de Mello - 11 de março de 2019