Foros del Web » Programando para Internet » PHP »

Proteccion de fotos

Estas en el tema de Proteccion de fotos en el foro de PHP en Foros del Web. Bueno, a este mensaje le veo pocos minutos en este foro, porque Cluster esta implacable.... Pero la verdad es que no se en donde debo ...
  #1 (permalink)  
Antiguo 13/12/2002, 00:05
 
Fecha de Ingreso: junio-2002
Ubicación: Buenos Aires, Argentina
Mensajes: 876
Antigüedad: 15 años, 6 meses
Puntos: 0
Proteccion de fotos

Bueno, a este mensaje le veo pocos minutos en este foro, porque Cluster esta implacable....
Pero la verdad es que no se en donde debo postearlo.

Mi duda es esta: Tengo un sitio donde los usuarios suben sus fotos. Estas fotos se muestran en sus perfiles, y los perfiles son solo aptos para miembros registrados.
Sin embargo, nada evita que una persona se ponga a probar desde el navegador los nombres de las fotos y pueda verlas, sin necesidad de ingresar como miembro, o sea solo visualizando la imagen.
Es esto "evitable" de alguna forma?

Gracias.
  #2 (permalink)  
Antiguo 13/12/2002, 05:10
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Si es evitable ...

Genera tu imagen dinámicamente leyendola de algun directorio donde estén y lanzandola al navegador con las cabeceras adecuadas segun sea tu MIME:

Sería algo así:

<?
header("Content-Type: image/jpeg");
readfile('tu_img_url');
?>

Ahora .. depende de la configuración de tu PHP y/o nivel de acceso al servidor que tengas puedes proteger ese directorio donde tengas las imagenes de varias formas para que solo acepte llamadas desde el scrpt q lea ese fichero (o dicho de otra forma desde tu el propio servidor y no accediendo directo.

Una forma es en mismo script mirar si el usuario está identificado (via tus variables de session y/o cookies o sistema que uses para veririficar al usuario) ... El nombre del fichero y URL lo puedes enviar a tu convencia con mas cabeceras HTTP ..

Header( "Content-Disposition: attachment; filename=$nombrearch");

(el attachment no creo q corresponda en este caso? ... no lo he probado .. para imagenes solo .. mas bien para enviar ficheros al navegador. Pero con esa cabecera defines el nombre del fichero)

Tambien puedes añadir mas cabeceras HTTP como las de evitar caché y cosas así.

El directorio en si lo puedes proteger via .htaccess (si usas Apache) definiendo restricciones de acceso ... Para que solo acepte llamadas de tu HOST y no de externos (Allow from tu_dominio o IP de tu host -- Deny from ALL .. orden Allow,Deny o algo así es .. hechale un vistazo al manual de Apache)

En general se trata de usar y conocer las cabceras HTTP .. (algun RFC nº nosecuato(s) lo definirá .. En la w3.org tienes el protocoolo entero del HTTP/1.1 ... hechale un vistazo).


Un saludo,
  #3 (permalink)  
Antiguo 13/12/2002, 06:57
Avatar de GaboMaKano  
Fecha de Ingreso: noviembre-2002
Ubicación: Viña del Mar - Chile
Mensajes: 323
Antigüedad: 15 años, 1 mes
Puntos: 2
sorry que interrumpa, pero hace un tiempo hice una consulta respecto a este sitiolink en donde no puedes bajar las imagenes, hacen una especie de cargador de imagenes que debe ser lo que dice cluster, es un sitio hecho en asp, pero imagino que se puede hacer en php de igual forma, como? no se, pero ustedes si saben.
__________________
Exito!!
:censura:
Visita Uganet.cl
  #4 (permalink)  
Antiguo 13/12/2002, 12:25
 
Fecha de Ingreso: junio-2002
Ubicación: Buenos Aires, Argentina
Mensajes: 876
Antigüedad: 15 años, 6 meses
Puntos: 0
Muchas gracias Cluster, hice justamente lo que me dijiste. Protegi con htacces y llame las fotos con un script. Era justo lo que buscaba, ni mas ni menos.
  #5 (permalink)  
Antiguo 13/12/2002, 20:38
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Zeus .. Te invito a que pongas la solución que le distes al problema en las FAQ's de PHP .. a mas de uno le puede interesar ..

Tanto el codigo PHP para llamar a la imagen .. como el archivo .htaccess con al menos los permisos que usastes para denegar a host q no sean el tuyo o lo que hicistes en tu caso.

Un saludo,
  #6 (permalink)  
Antiguo 13/12/2002, 20:42
 
Fecha de Ingreso: junio-2002
Ubicación: Buenos Aires, Argentina
Mensajes: 876
Antigüedad: 15 años, 6 meses
Puntos: 0
El tema es que use las opciones de htacces que me da mi server, por ahora no me puse a averiguar del tema, lo bueno seria que alguien que sepa lo explique, lo mio fue una solucion rapida, solo use un script para ver las fotos.
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:46.