¿como puedo ocultar la URL de un ARCHIVO?
NOTA: Este ejemplo sirve para archivos de extensión zip, pero cambiando SOLO una línea de código, podeis usar CASI cualquier archivo
CREDITOS: ESTE CODIGO HA SIDO CREADO, PROBADO Y DESARROLLADO UNICA Y SOLAMENTE POR EPA5 (Fran Rubio). Se permite su uso libremente.
Bueno amigos, primeramente teneis que escribir un archivo que se llama file.inc y dentro poneis el siguiente código
Código:
<%
Public Const ForReading = 1 'Abrir un archivo como sólo lectura. No se puede escribir en este archivo.
Public Const ForWriting = 2 'Abrir un archivo para escribir. Si existe un archivo con el mismo nombre, se sobrescribe el contenido anterior.
Public Const ForAppending= 8 'Abrir un archivo y escribir al final del mismo.
Public Const TristateUseDefault = 2 'Abrir el archivo utilizando el valor predeterminado del sistema.
Public Const TristateTrue = 1 'Abrir el archivo como Unicode.
Public Const TristateFalse = 0 'Abrir el archivo como ASCII.
Public Const adTypeBinary = 1 'Indica datos binarios.
Public Const adTypeText = 2 'Valor predeterminado. Indica datos de texto, en el juego de caracteres especificado en Charset.
Public Const MIME_ZIP = "application/x-zip-compressed"
'aPath: Camino al archivo
'save: Nombre del archivo que sera guardado
'mime: Tipo MIME del archivo
Public Sub sendFile(aPath, save, mime)
Dim fs,f, ts, dat(512), aFile, o
aFile=Server.Mappath(aPath)
Response.Clear
Response.ContentType = MIME_ZIP
Response.Buffer = True
set o = Server.CreateObject("ADODB.Stream")
o.Type = adTypeBinary
o.Open
o.LoadFromFile(aFile)
Response.AddHeader "content-disposition", "attachment;filename=" & save
Response.BinaryWrite o.Read
o.Close
Set o = Nothing
Response.End
End Sub
%>
y luego, por último en la página donde entra los usuarios para bajarse el archivo poneis lo siguiente...
ejemplo de donwload.asp
Código:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="CP_ACP"%>
<%Option Explicit%>
<!-- #include file="file.inc" -->
<%
'AKI, EL PRIMER PARAMETRO ES LA RUTA DEL ARCHIVO ZIP Y EL SEGUNDO PARAMETRO EL NOMBRE
'QUE LE QUERAMOS PONER AL ARCHIVO ZIP QUE SE LEERÁ CUANDO SE DESCARGUE.
sendFile "../../descargas/Demo.zip", "Mi_mejor_demo.zip", MIME_ZIP
%>
Bueno, ya me contareis algún día si os sirve de algo.
Un salu2