ASP Classique de télécharger le fichier script

J'ai un site web construit en ASP Classique, et je rencontre un problème avec un script qui permet à un utilisateur de télécharger un fichier, mais cache le chemin d'accès au fichier.

Lorsqu'un utilisateur est sur une page, ils vont voir un lien. Le lien est codé comme ceci:

<a href="download.asp?file=FILE-NAME-HERE" target="_blank">Download File</a>

Ce lien pour télécharger.asp lorsque le code est exécuté pour obtenir le fichier et de le livrer. Voici le code que j'ai droit:

<%
const adTypeBinary = 1
dim strFilePath, strFile

strFilePath = "/_uploads/private/" 
strFile = Request.QueryString("file") 

if strFile <> "" then
    'Set the content type to the specific type that you are sending.
     Response.ContentType = "application/octet-stream"
     Response.AddHeader "Content-Disposition", "attachment; filename=" & strFile

     set objStream = Server.CreateObject("ADODB.Stream")
     objStream.open
     objStream.type = adTypeBinary
     objStream.LoadFromFile(strFilePath & strFile)

    response.binarywrite objStream.Read

    objStream.close
    Set objStream = nothing

end if
%>

Ce code que j'ai mis en place à partir des deux questions sur ce site (Comment télécharger les fichiers à l'aide de vbscript en asp classique), et de http://support.microsoft.com/kb/276488

Ce qui se passe, cependant, est que le téléchargement.page asp est de me donner un "fichier non trouvé" erreur, même si le fichier est bien dans le répertoire web "/_uploads/private/".

Le type de fichier qui pourrait être l'une de plusieurs, y compris pdf, xls, docx, etc.

Est-il quelque chose dans mon code qui ne permet pas que le fichier soit trouvé?

IIS ont des autorisations de lecture pour ce dossier?
Oui, les autorisations en cours valeurs pour le "/_uploads/private/" dossier sont en 755.
Essayez l'ensemble de la lettre de lecteur + chemin d'accès.
Vous pouvez essayer d'utiliser Server.MapPath pour résoudre le chemin, c'est à dire objStream.LoadFromFile(Server.MapPath(strFilePath & strFile))

OriginalL'auteur user2762748 | 2013-11-04