Protegendo o diretório com .htaccess

2

Infelizmente, com um produto lançado, os hackers descobriram que podiam acessar um diretório desprotegido onde eu tinha os arquivos zip. Eu uso o PHP para servir os zips com o readfile (), então normalmente no meu aplicativo as pessoas não acessam esses arquivos pelo URL. Então, para evitar o problema, deixei cair um arquivo index.php em branco nesse diretório. O problema é que as pessoas que lêem nos fóruns quais são os nomes reais dos arquivos zip podem baixá-los simplesmente digitando a URL, e infelizmente meu sistema de entrega de produtos é complexo e não me permite alterar o nome da URL.

Como faço para criar um arquivo .htaccess nesse diretório, para que as pessoas não possam baixar nada dele por URL, mas permitir que meu código PHP readfile () continue a exibir esse arquivo com uma força dodwnload? Mesmo se você está apenas adivinhando - estou tomando algumas sugestões neste momento. Vou continuar tentando até encontrar algo que funcione.

Mais uma vez, só preciso bloquear o acesso direto do navegador a URLs de arquivos zip específicos que as pessoas leem em um fórum. Eu acho que o código PHP readfile (), que é executado através do sistema de arquivos ao invés do acesso web, continuará funcionando bem.

    
por ServerChecker 07.12.2012 / 01:38

1 resposta

2

Se você estiver usando readfile() , você pode colocar os arquivos em qualquer lugar fora do diretório htdocs, e acessá-los por php lá (certifique-se de que é legível pelo usuário (php).

Ou (se você precisar deles), você pode adicionar um .htaccess com:

Order deny,allow
Deny from all

que negará acesso (por meio de um navegador) a todos, mas o php (como serviço executado localmente) ainda poderá acessá-lo via readfile() .

    
por 07.12.2012 / 01:44