 |
Hackernews
Amigareview I
Sicherheitslücke bei MS Servern
Der Swisscom- Ueberwacher
Manipulierte Prozessoren
Microsoft 2000
Sicherheit bei Pagern
Musik für alle: MP3
Die Natel- Entschuldigung
Telefone abhören
Datendiebstahl mit IEX4
Keine 5555-Vebindung
Online Information
Was ist los mit Apple?
billiger telefonieren???
billiger Telefonieren
Störung im Videotex-Netz
MicroSoft wieder auf Systemerforschung
Der Trick mit Frames
AMD gegen Intel
Compi-Hilfe für die Züglete
MS IExplorer als Risiko
Sky - Karten
Telefonkarten
Cash Card
Redi Vision
Amigareview II
Fast Box
Amigareview I
|
 |
Frames
Wer zu Biwidus schon mal über ein Suchsystem gekommen ist, hat vielleicht über
einen kleinen, netten Effekt gewundert. Es werden automatisch die Frames um den
Artikel aufgebaut. Ich bin da auch schon gefragt worden, wie denn das geht. Hier
eine kleine Erklärung, aber Achtung, auch wenn ich es so einfach wie möglich
zu machen versuche, HTML und Javascript muss man verstehen, sonst kann man
meinen Erklärungen nicht folgen.
Begriffen, um was es geht? Wenn nicht, bitte zu einem anderen Artikel wechseln.
Nochmals die Umschreibung des Problems. Wenn ein Suchdienst einen Site durchsucht,
speichert er jedes einzelne File des Sites ab. Findet ein User danach eine Seite,
so erhält er die Adresse des Files. Das funktionert alles, solange das File nicht
Teil eines Frameaufbaus ist. Denn der Suchdienst kann nicht abspeichern, wie der
Frameaufbau einer Seite ist. Hier nun der Trick, wie man sicherstellt, das eine
Seite nur als Frame dargestellt wird.
Am Anfang jeder Seite steht ein Javascript. Dieses fragt die aktuelle Adresse
des Browsers ab. Wenn die aktuelle Adresse die Seite selbst ist, so fehlt die
Framedarstellung. Die Seite ruft dann von sich aus die Framedarstellung auf,
in der sie selber wird.
Die grosse Schwierigkeit bei einem Site mit vielen Seiten besteht darin, dass für
jeden Frameinhalt eine Frameeinteilung bestehen muss. Bei Biwidus kann das umgangen
werden, da jeder Artikel eine vierstellige Nummer trägt. Die Seite übergibt der
Frameeinteilung ihre eigene Nummer, und die Einteilung ruft dann den
entsprechenden Artikel auf.
Hier das Beispiel des Artikels 0507 (http://biwidus.ch/text/t05/0507.html):
<HTML><HEAD>
...
<SCRIPT language="Javascript">
<!--
var loc = top.location.href ;
var loclen = loc.length ;
if (loc.substring(loclen-22,loclen) == ".ch/text/t05/0507.html")
{top.location = "http://biwidus.ch/indexact.html?0507f"}
...
//-->
</SCRIPT>
</HEAD>
Zu beachten ist die etwas ungewöhnliche Semantik der substring-Methode
eines Strings. Die beiden Werte geben zwei Positionen innerhalb
des Strings an, ausgeschnitten wird vom kleineren bis zum grösseren.
Gezählt wird dabei von 1 bis n.
Das ev. aufgerufene http://biwidus.ch/indexact.html sieht so aus:
<HTML><HEAD>
<! Aufruf mit indexact.html?0xxxb >
<SCRIPT>
<!--
var arg = window.location.search ;
var nummer = arg.substring(1,5) ;
...
document.write("<FRAMESET COLS=\"155,*\">") ;
document.write("<FRAME SRC=\"randnew.html\" NAME=\"navigator\" MARGINWIDTH=0 MARGINHEIGHT=0>") ;
document.write("<FRAMESET rows=\"85,*\">") ;
document.write("<FRAMESET cols=\"70%,30%\">") ;
document.write("<FRAME SRC=\"titel.html\");
document.write("<FRAME SRC=\"schrift.html\" NAME=\"schrift\" SCROLLING=\"NO\">") ;
document.write("</FRAMESET>") ;
document.write("<FRAME SRC="/" + nummer + ".html\" NAME=\"text\">") ;
document.write("</FRAMESET></FRAMESET>") ;
//-->
</SCRIPT></HEAD>
Den Teil, den ich hier weggelassen habe, bewirkt die Umstellung des Titels (z.B. News auf Ausgang),
ohne dass die Frames neu aufgebaut werden müssen.
Ich hoffe, damit alle Klarheiten beseitigt
zu haben, ansonsten wende man sich direkt an meine EMail-Adresse.
|