Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

HBauer

Download de arquivo sem mostrar o caminho

Recommended Posts

Pessoal, estou precisando fazer uma tela para download mas preciso que cada usuario do sistema tenha acesso a um arquivo diferente.

Irei colocar todos os arquivos em uma unica pasta e dependendo do usuario ele vai poder baixar determinados arquivos, por isso não posso mostrar o link com o caminho completo para o usuario pois se ele souber o nome do outro arquivo (cujo ele nao tem acesso) ele tem como entrar com o link direto na url e baixar o arquivo...

 

entenderam o problema? resumindo tudo, tenho que disponibilizar o arquivo pra download mas não posso mostrar o caminho completo do arquivo....

 

nao encontrei nada do tipo aqui no forum.. talvez pq eu num to sabendo nem pra que lado corre.... nao sei direito como procurar isto...

Compartilhar este post


Link para o post
Compartilhar em outros sites

E se você utilizar um arquivo PHP para gerenciar isto? Ao invés de colocar o arquivo diretamente no link, coloque algo do tipo:

<a href="download.php?id=id-do-arquivo-ou-alguma-coisa-que-o-identifique">Download</a>
Aí nesse arquivo "download.php" você força o download do arquivo informado...

 

Se fosse um PDF, por exemplo, ficaria algo mais ou menos assim:

header("Content-type: application/pdf");header("Content-Disposition: attachment; filename=" . $filename);readfile("caminho-que-voce-nao-quer-que-os-usuarios-vejam/nome-do-arquivo.pdf");
Aí a partir disso você adiciona mais tipos, como documentos do Word, Excel, PowerPoint, MP3, etc.

 

 

:joia:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Perfeito Paulo, é exaamente isto que eu tava pensando... uma forma de montar um script php que chamasse o arquivo... mas não sabia como fazer.. vou pesquisar mais sobre isso....

 

agora fiquei com uma duvida... se eu colocar o link na tag <a> entao ele vai seguir o link certo? oque vai aparecer na tela? apenas a telinha de download ou a tela do navegador vai ficar em branco? o ideal seria colocar um target="_blank" no link?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vai aparecer só a janelinha de download (caso ele encontre o arquivo e faça o processamento correto).

 

Dica: coloca um .htaccess na pasta que você tem os arquivos para download com o conteúdo:

 

deny from all

As subpastas também ficarão inacessíveis via URL, para que os arquivos sejam alcançados somente pelo script de download.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vai aparecer só a janelinha de download (caso ele encontre o arquivo e faça o processamento correto).

 

Dica: coloca um .htaccess na pasta que você tem os arquivos para download com o conteúdo:

 

deny from all

As subpastas também ficarão inacessíveis via URL, para que os arquivos sejam alcançados somente pelo script de download.

 

como faço esse .htaccess? em bloco de nota e salvo com .htaccess só isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

para tratar a segurança. acha melhor upar arquivos em um servidor online e apenas cria link para redirecionar ao servidor?

 

para baixar arquivos que esteja armazenado no mesmo diretorio do site, qual é o melhor método ou mais seguro entao?

Compartilhar este post


Link para o post
Compartilhar em outros sites

não saco muito de PHP, mas essa questão é referente à segurança

é meio impossivel você ocultar a origem do download, qualquer gerenciador vai ter acesso ao caminho do arquivo

 

 

a questão é:

não se preocupe com o apontamento do caminho, se preocupe com quem vai acessa-lo

querendo ou nao, o usuario vai pegar o caminho - site.com.br/usuario_eu/aula01.zip

naturalmente ele poderá trocar 'usuario_eu' por 'usuario_fulano' em busca de outros arquivos

 

minha sugestão é a mesma do Paulo

trate a url do arquivo e verifique tudo que precisa, se o usuario estiver acessando a propria pasta, então pode liberar, caso contrario, trava o down

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.