Ver Mensaje Individual
  #1 (permalink)  
Antiguo 06/05/2013, 03:35
gmonterog
 
Fecha de Ingreso: mayo-2012
Ubicación: Palma de Mallorca
Mensajes: 71
Antigüedad: 12 años, 7 meses
Puntos: 1
¿Como acceder a archivos que están fuera del directorio de publicación?

Hola, estoy intentando implementar una descarga de archivos en una página, pero por motivos de seguridad y confidencialidad necesito que los archivos estén alojados en una carpeta fuera del directorio de publicación.

Los archivos son de tipo pdf, doc y docx.

Simplificando a máximo la cosa estoy probando a hacer las descargas con el siguiente código:

Código PHP:
Ver original
  1. <?php
  2.  
  3. $archivo="../../private/archivo.pdf";
  4.  
  5. header("Content-type: application/pdf");
  6. header("Content-Disposition: attachment; filename=$archivo");
  7.  
  8. readfile($archivo);

Cuando los pdf están alojados dentro del htdocs (o un subdirectorio cualquiera suyo) y lógicamente con la ruta relativa que corresponda, el tema funciona sin problemas, pero cuando meto los pdf en la carpeta private, que esta fuera de htdocs, aunque el script funciona el acrobat me da el siguiente error:

Cita:
Acrobat no pudo abrir '..-..-private-archivo.pdf' debido a que no es un tipo de archivo admitido o está dañado (por ejemplo, se envió como adjunto de correo electrónico y no se descodificó correctamente).
Mencionar que tanto la carpeta htdocs como la private tienen permisos 750.

¿Alguien sabe darme alguna orientación de lo que estoy haciendo mal?

No se si es un problema de rutas, de permisos, de configuración del servidor tal vez... ¿alguna pista?

Gracias a todos por adelantado.

Saludos,

GMG