Estoy publicando documentos que requieren que el usuario se registre antes de la descarga. Actualmente, una vez que registrarse y acceder, los enlaces a los documentos se muestran como:¿Cómo sirvo un archivo descargable en línea sin exponer la ruta física?
myurl.com/docs/mypdf.pdf
Así que la ruta física del documento se expone a cualquiera conectado ¿Cuál es la mejor práctica para mantener la ruta física al. documento oculto para que los usuarios registrados no puedan compartir enlaces directos con usuarios no registrados o publicar enlaces directos a los documentos en otra parte?
EDIT: Estaba buscando una idea que fuera independiente del idioma, así que elegí algunos de mis idiomas favoritos para las etiquetas. La implementación real en este caso es ASP clásica. Actualmente estoy usando un script de envoltura de descarga que confirma que el usuario ha iniciado sesión antes de redirigir a la URL del documento real. Simplemente no lo incluí en mi pregunta por simplicidad.
Podría ser una buena idea usar el servidor web para traducir de forma transparente http://myurl.com/docs/mypdf.pdf a http://myurl.com/docshandler.php?file=mypdf.pdf, y a docshandler maneja la autenticación antes de enviar el archivo o muestra un mensaje de error. –