Hallo,
fhem läuft bei mir als https . Ich möchte aber per weblink iframe auch http-Seiten einbinden.
Eigentlich geht das Mischen von http iund https auf einer Seite nicht, es wird ein leerer Frame angezeigt.
Unter http://stackoverflow.com/questions/18327314/how-to-allow-http-content-within-an-iframe-on-a-https-site ist ein Workaround beschrieben.....
Konkret auf mein Problem angewendet heisst das:
auf https://192.168.178.6:8084/fhem?room=Music liegt mein iframe weblink, der auf
https://192.168.178.6:8084/???????????/redirect.html verweist.
redirect.html enthält eine einzige Zeile in js
document.location.href ="http://192.168.178.5.";
Auf http://192.168.178.5 liegt eben mein Musik-Server.
(müsste dann auch mit allen anderen externen http Seiten gehen)
Frage, geht das so ?
Wenn ja wo im FHEM/Rasbian Verzeichnis /???????????/
muss ich die Datei redirect.html ablegen, damit ich drauf zugreifen kann ?
Momentan komme ich egal wo/was ich irgendwo ablege, immer auf die FHEM Hauptseite.
Gruss
Ralf
In dem Falle ist ein anderes Vorgehen besser:
Läuft auf Deinem Server auch ein apache?
d.h. dann dem apache beibringen, das er FHEM per "proxy" aufruft und auch Deinen zusätzlichen http-Seiten. Dann geht alles on Deinem "Anzeigedevice" über den apache-Proxy ... wenn der Server genug "Power" hat, d.h. kein RasPi ist, läuft dieses optimal (z.B. bei mir)
Hallo,
der Musicserver ist Runeaudio, der läuft mit nginx unter archlinux, kein apache.
Fhem und Runeaudio laufen beide jeweils auf einem Raspberry Pi B.
Ich verstehe auch nicht was du sagen willst mit
"apache beibringen, das er FHEM per "proxy" aufruft"....
Was ich machen will ist, ist einfach in FHEM über einen weblink iframe diesen Musicserver einzubinden.
Fhem ist https, rune ist http, iframe liefert mir deswegen leere Frames.
Wenn ich fhem unter http betreibe, geht es einwandfrei.
Ich könnte den Musicserver auf https umstellen, dann kann aber nicht mehr jeder im Hausnetz
drauf, zudem dachte ich dass die Redirect-Lösung hier elegant wäre und nicht nur für mich interssant, sondern für alle, die eine normale interne oder auch externe http seite per iframe in fhem einbinden
wollen.
Also so:
#############################
# Rune iframe
###########################
define RUNE weblink iframe http://192.168.178.5/
attr RUNE htmlattr width="750" height="600" frameborder="0" marginheight="0"
attr RUNE room Music
Gruss
Ralf
Auch ngix kann als "proxy" funktionieren, d.h. Du ruft nicht fhem direkt, sondern über apache, bzw. bei dir ngix auf. Dadurch kann aber der Web-Server auch andere Datenströme einmixen, d.h. http in https kapseln. verstanden?
Wie man aber ngix als proxy konfiguriert ... google sollte helfen ;o)
Edit:
Es ist kein fhem, sondern ein lokales Browser-Problem. Die meiten aktuellen Browser akzeptieren in Frames kein Switch von https und http ....
Hallo,
dass das kein FHEM Problem sondern browserbedingt ist, ist mir klar !
Deinen Lösungsvorschlag verstehe ich noch nicht wirklich, liegt wahrscheinlich an
meinen mangelhaften Linux-Kenntnissen. Ich nehme aber mal an, dass deine
Lösung vorraussetzt, dass immer beide Server an sind. Sind sie aber nicht,
(möchte ich auch nicht )nur der FHEM-Raspi läuft 24h durch.
Wie sieht's denn mit meinem erstgenannten Vorschlag aus, einfach eine
https Seite auf dem fhem raspi aufzurufen, die per js auf eine andere Seite verweist ?
Gruss
Ralf
Viele Wege führen nach Rom ... nur kenne ich mich mit js nicht aus ;o)
Und da mein FHEM auf meinem "Haus-Web-Server" liegt ....
ich habe es nun mit einem Redirect im Metatag realisiert.
Aufgerufen wird https://192.168.178.6:8084/fhem/redirect/1.html
1.html liegt im Verzeichnis www/redirect/ und hat als Inhalt
<meta http-equiv="refresh" content="0; URL='http://192.168.178.5'" >
in fhem.cfg steht also
define MUSICPLAYER weblink iframe https://192.168.178.6:8084/fhem/redirect/1.html
attr MUSICPLAYER htmlattr zoom="50%" width="700" height="400" frameborder="0" marginheight="0"
attr MUSICPLAYER room Music
Geht im Prinzip, zumindest am Tablet mit meinem Boat-Browser, den ich nutze.
Firefox unter Windows will gar nicht Safari und Opera unter Windows geht bedingt.
Ich würde jetzt noch gerne den Inhalt des Frames verkleinern, dachte das geht mit
dem Zoom Attribut aber egal wie ich das eingebe "50%" oder "50" oder "0,5" sieht es immer gleich aus....
Weiss da jemand Rat ?
Gruss
Ralf