Thomas Schmieder: PHP und Frames

Beitrag lesen

Hallo,

mal was Basisorientiertes: :-))

Der Server entscheidet, welche Angebote zum Draufklicken er dem Browser(-benutzer) macht. Der Browser(-benutzer) entscheidet, welches Angebot er annimtt und in welchem Fenster er das darstellt (in dem angebotenen oder in einem neuen). Der Server entscheidet, welche Inhalte er stattdessen sendet. Auf jeden Klick kann er genau eine Antwort schicken. Um das 'etwas' aufzuweichen, hat man die Frames geschaffen. Da schickt der Derver keine "Antwort", sondern neue Anfragen und vranlasst den Client i.d.R. ohne Eingriffsmöglichkeit, nochmals nachzufragen. Der Client benutzt nun die vom Server vorgeschlagenen Fenster als Empfangsort für die angeforderten Frames.

Wenn man in einem Frame erneut eine Anfrage startet (auch durch Redirect), dann muss man eben dafür sorgen, dass diese im "_parent"-Frame angezeigt wird. Das bedeutet aber auch, dass der Client schon vorher wissen muss, in welchem Frame (Fenster) er denn bitte diese Anfrage demnächst anzeigen soll.

Beim Request wird im Client ein virtual Port geöffnet und hinter dem Port die Destination eingetragen. Der Port wird mit der Anfrage und dem Namen der Domain an die IP, und den Port des Servers gesendet. Der leitet das der entsprechenden Ressource zu. Die Ressource antortet lediglich an die IP des Fragestelles unter Mitsendung des (virtuellen)Ports. Der Fragesteller (Client) nimmt die Antwort aufgrund der IP an, leitet sie an den Prozess mit der passenden Portnummer weiter und dieser sortiert die Antwort in die Destination. Darauf hast Du keinerlei Einfluß mehr. Diese ganze Kette muss also schon relativ früh bekannt sein.

Dein  Browser "beantragt" bei der entsprechenden Instanz des Client-OS für JEDE Anfrage einen neuen Port. Musst Du Dir einfach mal auf dem Server anschauen. Dort kannst Du das ja mittels Interface (PHP) visualisieren lassen und die Info an den Client zurückschicken. Nur wenn der Client einen Port vollständig schließen konnte, kann er ihn wiederbenutzen. Für die Ports gibt ein Timeout, dass man für den Fall der Nutzung durch den Browser auch irgendwie einstellen konnte, ich habe leider vergessen, wie.

Wäre für Testzwecke ganz witzig, die Port-Timeout auf 20sec herunterschrauben zu können.

Liebe Grüße aus http://www.braunschweig.de

Tom

--
Intelligenz ist die Fähigkeit, aus Fehlern Anderer zu lernen und Mut die, eigene zu machen.