Probleme mit iFrame
freehawk_
- html
Hallo zusammen,
ich habe ein Problem mit iFrames. Hintergrund was ich tun möchte: Ich habe eine Internetseit zuhause laufen und möchte da gerne mit iFrames die ganzen Konfigurationsseiten meiner Netzwerkkomponeten einbinden in iFrames.
Jetzt hab ich aber ein Problem damit:
Dieser iFrame funktioniert:
<iframe src="http://192.168.2.1" name="Fritzbox" width="100%" height="100%" scrolling="auto" frameborder="0"></iframe>
Dieser nicht:
<iframe src="http://sql.sco.ut" name="PhpMyAdmin" width="100%" height="100%" scrolling="auto" frameborder="0"></iframe>
Woran kann das liegen?
Ich stehe derzeit ein wenig auf dem Schlauch.
Danke
Gruß Markus
Hallo,
ich habe ein Problem mit iFrames.
wer nicht ...?
Dieser iFrame funktioniert:
<iframe src="http://192.168.2.1" name="Fritzbox" width="100%" height="100%" scrolling="auto" frameborder="0"></iframe>
Dieser nicht:
<iframe src="http://sql.sco.ut" name="PhpMyAdmin" width="100%" height="100%" scrolling="auto" frameborder="0"></iframe>
Was heißt "funktioniert" bzw. "funktioniert nicht"?
Woran kann das liegen?
Im ersten Beispiel referenzierst du den Server über die IP-Adresse, im zweiten Beispiel über einen Hostnamen. Kann eventuell der Hostname sql.sco.ut nicht aufgelöst werden? Mir ist zumindest die TLD .ut nicht bekannt, eine kurze DNS-Abfrage nebenher ergibt auch "kenn ich nicht". Also müsste bei dir ein lokaler Nameserver laufen, der diesen Namen auflöst. Ist das so?
Ich stehe derzeit ein wenig auf dem Schlauch.
Dann geh einfach einen Schritt zur Seite. ;-)
So long,
Martin
Hallo Markus,
Dieser nicht:
<iframe src="http://sql.sco.ut" name="PhpMyAdmin" width="100%" height="100%" scrolling="auto" frameborder="0"></iframe>
Definiere "funktioniert nicht". Verhindert die aufzurufende Seite (phpMyAdmin?) vielleicht einfach dass sie in einem Frame aufgerufen wird?
Gruß,
Tobias
Hallo zusammen,
danke für die Antworten.
Funktioniert heißt in dem Fall der Frame wird angezeigt, funktioniert nicht heißt der Frame bleibt weiß.
Ja die Domain ist meine eigene zuhause und wird dort auch aufgelöst (zumindest von Client), der Server kann sie nicht auflösen, muss er ja auch nicht, da der Client die Seite einbinden muss. (iFrame mit www.google.de geht auch nicht)
Wie finde ich raus welche Seite sich in einen Frame einbinden lässt und welche nicht?
Danke
Gruß Markus
Hallo Markus,
Wie finde ich raus welche Seite sich in einen Frame einbinden lässt und welche nicht?
Indem du dir die HTTP-Header der einzubindenden Seite anzeigen lässt, entweder per curl -I http://example.org
über die Kommandozeile (sofern du Curl installiert hast) oder mit den Entwicklerwerkzeugen deines Browsers – Bei Firefox via F12 aufzurufen:
Je nachdem, welcher Wert für X-Frame-Options
gesetzt wurde, erlaubt die Seite das Einbinden in Frames nicht. Im Beispiel habe ich das für google.de ausgeführt, wo das Einbetten nur von der selben Domain aus erlaubt ist („SAMEORIGIN“).
Gruß
Julius
Hallo Julius,
ok ich habs für phpmyadmin mal getestet und die Seite hat da ein "deny" stehen. Somit ist das wohl klar warum das nicht geht.
Gibt es sonst noch eine Möglichkeit die Seite einzubinden vielleicht mit einem Proxy Script oder sowas?
Danke
Gruß Markus
Hallo Markus,
Gibt es sonst noch eine Möglichkeit die Seite einzubinden vielleicht mit einem Proxy Script oder sowas?
PHPmyAdmin ließe sich sicherlich dazu bringen, diesen Header nicht mehr zu senden:
Laut der Doku gibt es eine Konfigurationsoption dafür. Alternativ könntest du versuchen, die betreffende Quelle im Code von PHPmyAdmin auszukommentieren, aber das würde ich an deiner Stelle lieber lassen.
Für die PHPmyAdmin-Alternative Adminer gibt es ein Plugin zum Erlauben des Einbettens in Frames.
Abschließend möchte ich noch erwähnen, dass X-Frame-Options
– wie viele andere Sicherheitsfunktionen auch – schon ihre Berechtigung haben, aber auch ihre Nebenwirkungen: Es liegt in der Natur der Sache, dass die eingebettete Webseite nicht zwischen Gut (Dir) und Böse (ein Cracker, der dich per Clickjacking angreift) unterscheiden kann.
Gruß
Julius
Hallo Markus,
eine Ergänzung habe ich noch:
Du könntest (zusätzlich zu DENY
?) mit X-Frame-Options ALLOW-FROM http://example.org/test
arbeiten, das würde den Schutz nicht vollständig aushebeln. Laut MDN sollte zumindest Firefox das unterstützen.
Gruß
Julius