Recommandé: Introduction aux bases du développement ASP des sciences humaines Qu'est-ce que ASP? ASP est l'abréviation de pages de serveurs actifs, qui est la page du serveur actif. Les fichiers ASP ont .asp comme extension. Ce qui est spécial, c'est que toutes les langages de balisage pouvant être utilisés dans les fichiers HTML peuvent être utilisés dans les fichiers ASP et les fichiers ASP
Si nous connaissons le chemin réel d'un fichier statique tel que: http://www.xx.com/download/51windows.pdf, si le serveur n'a pas de restrictions spéciales, nous pouvons le télécharger sans effort! Lorsque le site Web fournit un téléchargement 51windows.pdf, comment le téléchargeur peut-il ne pas obtenir son chemin réel! Cet article présentera comment utiliser ASP pour masquer le chemin de téléchargement réel d'un fichier.
Lors de la gestion des fichiers de sites Web, nous pouvons placer des fichiers avec la même extension dans le même répertoire et donner un nom spécial, par exemple, mettre le répertoire de fichiers PDF que le_PDF_FILE_S, et enregistrer le code suivant sous Down.asp. Son chemin en ligne est http://www.xx.com/down.asp. Nous pouvons utiliser http://www.xx.com/down.asp?filename=51windows.pdf pour télécharger ce fichier, et le téléchargeur ne peut pas voir le chemin de téléchargement réel de ce fichier! Dans Down.asp, nous pouvons également définir si le fichier téléchargé doit être connecté et déterminer si la page source téléchargée est un site Web externe, afin d'empêcher le fichier d'être volé.
| Ce qui suit est le contenu cité: Exemple de code: <% From_url = cstr (request.servervariables (http_referer))) Serv_Url = CSTR (request.servervariables (server_name)) Si mid (from_url, 8, Len (serv_url)) <> serv_url alors Response.Write Lien illégal! 'Empêcher le vol de liaison réponse. terminer si si request.cookies (Locined) = alors réponse.redirect /login.asp 'requis pour se connecter! terminer si Fonction getFileName (longName) '/ Folder1 / Folder2 / file.asp => file.asp Tandis que instr (longName, /) LongName = Right (LongName, Len (LongName) -1) se promener GetFileName = longName Fonction finale Salentueux Sombre contenu Nom de fichier DIM Dim TrueFileName Dim fichier Const adtypebinary = 1 FileName = request.Querystring (nom de fichier) Si le nom de fichier = alors Response.Write Invalid / WebPage / ASP / 041101 / 24.htm! Réponse. Terminer si FileExt = mid (nom de fichier, instrrère (nom de fichier,.) 1) Sélectionnez Case UCase (FileExt) Cas ASP, asa, aspx, asax, mdb Response.Write Operation illégale! Réponse. Fin de sélection Réponse. Si LCase (à droite (nom de fichier, 3)) = gif ou lCase (à droite (nom de fichier, 3)) = jpg ou lCase (à droite (nom de fichier, 3)) = png alors Response.ContentType = Image / * 'La boîte de dialogue de téléchargement n'apparaît pas pour les fichiers d'image autre Response.ContentType = Application / MS-Download terminer si Response.Addheader Content-Disposition, attachement; 200497141230.htm = & getFileName (request.Querystring (nom de fichier)) Set stream = server.createObject (adodb.stream) Stream.Type = Adtypebiny Stream. Si LCase (droite (nom de fichier, 3)) = PDF alors 'définir le répertoire de fichier de type PDF TrueFileName = / the_pdf_file_s / & nom de fichier terminer si Si LCase (Right (nom de fichier, 3)) = Doc alors 'Définissez le répertoire de fichier Doc Type TrueFileName = / my_d_o_c_file / & nom de fichier terminer si Si LCase (à droite (nom de fichier, 3)) = gif ou lCase (à droite (nom de fichier, 3)) = jpg ou lCase (à droite (nom de fichier, 3)) = png alors TrueFileName = / all_images _ / & FileName 'définir le répertoire de fichiers image terminer si Stream.LoadFromFile Server.Mappath (TrueFileName) Bien que non stream.eos Réponse.binarywrite stream.read (1024 * 64) Se promener Stream.close Set stream = rien Réponse.flush Réponse. %> |
Cet article est collecté et compilé sur Internet. Si vous êtes l'auteur original, veuillez écrire pour modifier l'auteur et la publication source # vip.qq.com (modifier # en @)
Partager: Conseils: utilisez GetString pour augmenter la vitesse d'ASP De nombreux programmeurs ASP ont eu l'expérience de l'exécution de requêtes de base de données, puis d'affichage des résultats de la requête dans des tables HTML. Habituellement, nous faisons ceci: ce qui suit est le contenu cité: