DevTrain

Autor: Bernhard Elbl

URL verstecken

Wie kann ich die URL eines Bildes auf meinem Web unsichtbar machen?
Mit Javascript gibt es einige mehr oder weniger gute Möglichkeiten. In diesem Artikel werde ich zeigen, wie man mit ASP eine URL zu einem Bild relativ sicher verstecken kann!

Das Prinzip

Mit dem Scripting.FileSystemObject lese ich das Bild aus, und schicke es anschließend direkt an den Browser. Mit kleinen Abänderungen kann ich so auch Dateien verstecken, die zum Download gedacht sind!

urlhide.asp

<%@ Language=VBScript %>
<%
Response.Expires = 0
Response.ContentType = "image/jpeg"
strFileName = "ppedv.jpg"
strMyPath   = Server.MapPath("./images") & "" & strFileName
set oFileSys = Server.CreateObject("Scripting.Filesystemobject")
'------ Ermitteln der Dateigroesse
    set oFile = oFileSys.GetFile(strMyPath)
        FileSize = oFile.Size
    set oFile = nothing

Jetzt öffne ich die Datei mit OpenTextFile(Pfad, IOMode, Create, Format)
Pfad: URL des Bildes
IOMode : 1 = ForReading, 2 = ForWriting, 3 = ForAppending
Create : true oder false - für das Erstellen einer Datei
Format : -1 = TristateTrue(öffnen der Datei im UniCode)
    set oFile = oFileSys.OpenTextFile(strMyPath, 1, false, -1)
'------ Hier wird der Datei-Inhalt ausgelesen und
'------ per Response.BinaryWrite ausgegeben
        Response.BinaryWrite(oFile.Read(FileSize))
 set oFile = nothing
set oFileSys = nothing
%>

Ich kann die urlhide.asp einfach starten. Ich kann diese Seite aber auch in eine HTML-Seite einbinden...
bildview.htm
...
<img src="urlhide.asp">
...

Natürlich muß man nicht für jedes Bild so eine urlhide.asp erstellen. Um die Ausgabe von Bildern variabel zu gestalten, kann ich folgender maßen vorgehen. Ich erstelle ein HTML-File und übergebe den Name der Datei in der URL(ohne Pfad und Extension)
bildview2.htm
...
<imgsrc="urlhide.asp?name=ppedv">
...

in der urlhide.asp ändere ich folgende Zeile
strFileName = "ppedv.jpg"
in
strFileName = Request.QueryString("name") & ".jpg"

Jetzt wird der Name der Bilddatei über die URL aufgerufen. Der Pfad und die Extension des Bildes bleibt versteckt.


Erfasst am: 02.04.2001 - Artikel-URL: http://www.devtrain.de/news.aspx?artnr=411
© Copyright 2003 ppedv AG - http://www.ppedv.de