Foros del Web » Programando para Internet » PHP »

Porteger descarga con PHP

Estas en el tema de Porteger descarga con PHP en el foro de PHP en Foros del Web. Buenas, de antemano gracias por leer el HILO mi rpoblema es el siguiente: 1. tengo una base de clientes. 2. Los clientes pueden descargar ciertos ...
  #1 (permalink)  
Antiguo 13/06/2007, 16:44
Avatar de mafima  
Fecha de Ingreso: abril-2003
Ubicación: Medellin-Colombia
Mensajes: 1.109
Antigüedad: 21 años, 7 meses
Puntos: 24
Porteger descarga con PHP

Buenas, de antemano gracias por leer el HILO

mi rpoblema es el siguiente:

1. tengo una base de clientes.
2. Los clientes pueden descargar ciertos archivos dependiendo del tipo de cliente.
3. Pero para ello tienen que hacer login.

ya tengo hehco el sistema de login, donde identifica que tipo de cliente es, y dependiendo del cliente le muestra una lista de los archivos que tienen disponibles para descargar, sin mebargo, estos archivos estan dentro de una carpeta.

Mi preocupacion es la siguiente:
1. Cualquier persona teniendo la ruta de desacarga del archivo podría descargar el archvio sin hacer login.

2. se me ocurrio proteger la carpeta, por medio del Panel de control o de un .htaccess, sin embargo no se como hacer para que mi cliente una ves haga login ( que saca los datos de la base de datos) pueda hacer login en la proteccion que hace el Cpanel a la carpeta.

y si asumiera la solucion numero 2, como puedo hacer para que determinado cliente solo pueda descargar los archivos que le corresponden teniendo una sola carpeta?

¿Que otras alternativas conocen que podria usar?

Espero que me halla hecho entender, de verdad se los agradezco mucho.
hasta luego
__________________
SEO en Medellin
  #2 (permalink)  
Antiguo 13/06/2007, 20:46
 
Fecha de Ingreso: julio-2006
Ubicación: sevilla
Mensajes: 251
Antigüedad: 18 años, 4 meses
Puntos: 5
Re: Porteger descarga con PHP

Bien te entiendo, la solucion es una mezcla de las dos cosas que me comentas esta claro que el directorio lo tienes que proteger y lo que tienes que hacer es cuando solicites el archivo pasarle los parametros de usuario permitido y chmod y descargar
  #3 (permalink)  
Antiguo 13/06/2007, 21:42
Avatar de mafima  
Fecha de Ingreso: abril-2003
Ubicación: Medellin-Colombia
Mensajes: 1.109
Antigüedad: 21 años, 7 meses
Puntos: 24
Re: Porteger descarga con PHP

pero como lo hago?
como puedo hacer que por medio de php ya no pida login para acceder al direcotorio?
__________________
SEO en Medellin
  #4 (permalink)  
Antiguo 14/06/2007, 04:14
Avatar de laaccaal  
Fecha de Ingreso: julio-2003
Ubicación: Murcia
Mensajes: 147
Antigüedad: 21 años, 4 meses
Puntos: 1
Sonrisa Re: Porteger descarga con PHP

Hola,
Bueno lo que puedes es usar los headers de php


########################################

header ( “Content-Type: application/octet-stream”);
header( “Content-Disposition: attachment; filename=archivo.rar“);
readfile(”http://www.milo.com/prueba/index.rar“);

##########################################

http://www.milo.com/prueba/ origen del archivo index.rar
index.rar -->es el archivo original.
archivo.rar --->es el archivo renombrado por php.
__________________
Album Fotos
Blog MisApuntes
  #5 (permalink)  
Antiguo 14/06/2007, 08:51
Avatar de mafima  
Fecha de Ingreso: abril-2003
Ubicación: Medellin-Colombia
Mensajes: 1.109
Antigüedad: 21 años, 7 meses
Puntos: 24
Re: Porteger descarga con PHP

muchas gracias, precisamente ayer en la noche lei algo al respecto y ay pude solucionar el problema.

practicamente lo que hice fue ponerle nombres raros a los archivos: por ejemplo:123456789er.pdf y con las cabeceras forzaba a descargarlo con un nombre diferente, por ejemplo: libro.pdf

Asi no sabian la ruta verdadera del libro.

Por su respuesta muchas gracias, aun me queda una duda pero la abrire en un hilo diferente para que quede mas comprensible....

chao.
__________________
SEO en Medellin
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:55.