Ver Mensaje Individual
  #8 (permalink)  
Antiguo 20/05/2017, 18:41
Avatar de Malenko
Malenko
Moderador
 
Fecha de Ingreso: enero-2008
Mensajes: 5.323
Antigüedad: 16 años, 3 meses
Puntos: 606
Respuesta: Duda imagenes en pagina web

No entiendo el problema en guardar los ficheros en un directorio del disco en lugar de dentro de la base de datos. Que se puede estropear el HDD del servidor? Bueno, si es un servidor decente, no hay problema porque los discos duros estarán en raid (al igual que suele haber redundancia en fuentes de alimentación y red). Además, acaso la base de datos no se guarda en disco? Vamos, que en caso de error de disco vas a sufrir igual...

Iendo al tema. Lo ideal es tener las imágenes en una carpeta que no sea visible desde internet. Luego solo tienes que montar una página que sirva de "proxy" para acceder a la imagen original. Esta página te permite hacer cosas extras como comprobar si el usuario tiene una sesión abierta, si tiene privilegios para ver una imagen en particular, etc. Esta solución es muy sencilla de programar y solo requiere un poco de manejo de la redirección de URL's.

Por ejemplo, cuando quieras mostrar "\img\foto1.jpg" tendrías una regla que todo lo que sea "\img\*.jpg" vaya a "procesarImagen.jsp?url=foto1.jpg". Y procesarImagen.jsp solo tendría que realizar la lógica de negocio de control de sesión y usuario (si precisa) y mandar la imagen al navegador como un stream.

Todo esto si obviamente requieres realizar algún tipo de procesamiento cuando se quiera acceder a la imagen. Sino simplemente con que sea un directorio con únicamente permisos de lectura (ni escritura ni ejecución), hay más que suficiente para la mayoría de webs.
__________________
Aviso: No se resuelven dudas por MP!