Anzeige Livestream unter Chrome, Firefox und Opera
lima-city → Forum → Die eigene Homepage → HTML, CSS & Javascript
adresse
anbieter
bild
code
header
http
image
kamera
kanal
laufen
monat
opus
problem
programmierung
server
turmfalke
type
url
verbindung
video
-
Habe 3 Webcams am Laufen die auf meiner Internetseite abrufbar sein sollen.
Der Aufruf erfolgt mittels folgendem Code:
<img src="http://woke92.ddns3-instar.de:8082/video.jpg?ch=1" id="jpgviewer" onload="LoadImage()" style="width:100%;height:100%;">
Unter Edge und IE funktioniert das auch ohne Probleme, bei Chrome, Firefox und Opera ging es auch aber nun seit einigen Monaten nicht mehr! Hat jemand ne Idee woran das liegen könnte bzw. wie man das wieder unter allen Browsern zum Laufen kriegt?? -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
...und LoadImage() macht was genau?
-
Also da die Mobile-Variante ja im Firefox funktioniert hab ich mal geschaut wie es bei dem Anbieter im code steht.
Bei dir wird LoadImage() gestartet, beim Anbieter aber SetMyTimer(), also so wie in deiner Mobilen Variante.
<img src="video.jpg?ch=1&uniq=0.44717290929773956" id="jpgviewer" name="jpgviewer" onload="SetMyTimer()" style="border-color:#000000; border-style:solid" width="704" height="528" border="0">
Bei dir müsste ja halt noch die komplette URL mit angegeben werden.
Beitrag zuletzt geändert: 3.2.2018 11:32:23 von lykaner-forum -
Was meinst Du mit "komplette URL"? Das wäre doch dann die URL des DDNS Dienstes an dem die Kameras angemeldet sind und das ist angegeben: <img src="http://woke92.ddns3-instar.de:8082/video.jpg?ch=1" id="jpgviewer" onload="LoadImage()" style="width:100%;height:100%;">
Hab von Programmierung leider null Ahnung. Das Script zum Einbinden in die Seite hat mir jemand anderes geschrieben.
Hab das Script hier mal hinterlegt:
https://www.dropbox.com/s/1zkltorjx38llee/Kamera.js?dl=0
Muß mich korrigieren: Im Code der Seite sieht der Scriptaufruf folgendermaßen aus:
<code><script src="https://turmfalken-nikolai-spandau.de/Kamera.js"></script></code>
Beitrag zuletzt geändert: 3.2.2018 12:23:12 von turmfalken-nikolai -
Ich vermute, dass es am https liegt.
Die Seite wird über eine verschlüsselte Verbindung geholt. Das Bild aber über eine unverschlüsselte (http).
http://woke92.ddns3-instar.de:8082/video.jpg?ch=1
Im Firefox werden deshalb die Bilder nicht geladen.
Fehler Meldung im Firefox:
Content Security Policy: Upgrade der unsicheren Anfrage 'http://woke92.ddns3-instar.de:8082/video.jpg?ch=1&uniq=0.3299483525667454' zur Verwendung von 'https'
Da aber das Bild nicht über eine verschlüsselte Verbindung (https) holen kann, wird es aus Sicherheitsgründen komplett blockiert.
Ich schätze mal das Chrome dies auch blockt (habe kein Chrome).
Dem Edge ist dies vermutlich egal, weshalb der das Bild auch anzeigt.
Beitrag zuletzt geändert: 3.2.2018 14:38:04 von cybercrack -
hm, bis vor ein paar Monaten gings aber! Habe ja an der Programmierung nix geändert.
Versuche jetzt grade mal die ganze Sache über eine andere DDNS Adresse zum Laufen zu bringen. Mal schauen, dann müsste es ja gehn.
EDIT: Irgendwas ist da oberfaul. Habe nun im Script die DDNS Adresse geändert. Nun wird aber das komplette script nicht mehr geladen
Sehr merkwürdig!
Beitrag zuletzt geändert: 3.2.2018 18:59:19 von turmfalken-nikolai -
turmfalken-nikolai schrieb:
hm, bis vor ein paar Monaten gings aber! Habe ja an der Programmierung nix geändert.
https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/upgrade-insecure-requests
Beitrag zuletzt geändert: 3.2.2018 18:59:18 von cybercrack -
hm, gut. Dann ist das wohl die Ursache. Dann muß ich jetzt halt sehn das ich das alles über die neue DDNS Adresse zum Laufen bekomm aber wie oben bereits geschrieben lädt nach Anpassung der DDNS Adresse das ganze Script nicht mehr! Völlig unklar warum das so ist!
-
Man könnte auch so nen pseudo Tunnel von HTTPS auf http zusammenbauen und da halt unter https die Daten der Cam abrufen.
Beitrag zuletzt geändert: 3.2.2018 20:46:18 von horstexplorer -
Habe jetzt bei dnshome.de ne neue DDNS-Adresse angemeldet. Diese habe ich dann mit korrektem Port der Webserversoftware in das Script eingetragen ( alte DDNS Adresse gelöscht und neue eingetragen ). Natürlich ist die neue Adresse auch korrekt im Router hinterlegt.
Die neue DDNS Adresse ist definitiv aktiv. Übers Smartphone ( Datenverbindung ) komme ich problemlos dort hin wo ich hin möchte.
Rufe ich nun die Website mit dem angepassten Script auf passiert gar nix. Nicht mal das Script wird noch geladen
Frag mich wie das sein kann wenn ich am Script nichts weiter ändere als den DDNS Eintrag von dem das Script die Bilder abrufen soll.
Beitrag zuletzt geändert: 3.2.2018 20:59:09 von turmfalken-nikolai -
Also das Problem ist ja, dass du keine SSL verbindung zu deinem Server aufbauen kannst.
http://91.64.235.93:8082
Du kannst aber einen Proxy nehmen und dies so lösen:
<img src="https://www.popunderfreeproxy.eu/browse.php?u=http://91.64.235.93:8082/video.jpg?ch=1&uniq=0.9962466822058718">
Dein Script musst du nur noch entsprächen ändern, das die modifizierte Quelle des Bildes neulädt.
function LoadImage(){ //Aktualisiert das angezeigte Bild document.images.jpgviewer.src ='http://woke92.ddns3-instar.de:8082/video.jpg?ch='+Kanal+'&uniq='+Math.random(); }
Dies musst du zu
function LoadImage(){ //Aktualisiert das angezeigte Bild document.images.jpgviewer.src = 'https://www.popunderfreeproxy.eu/browse.php?u=http://91.64.235.93:8082/video.jpg?ch='+Kanal+'&uniq='+Math.random(); }
ändern.
Beitrag zuletzt geändert: 3.2.2018 22:02:40 von cybercrack -
dnshome.de unterstützt https. Darüber sollte also eine gesicherte Verbindung aufzubauen sein. Die Frage wäre nun warum nach Ändern der DDNS Adresse das komplette Script auf der Seite nicht mehr geladen wird.
EDIT: Habe das Gleiche jetzt mal über MyFritz Freigabe probiert: https://server-pc.qjhqvzz86ihztvhe.myfritz.net:8082
Leider das gleiche Resultat. Das gesamte Script wird nicht mehr geladen nur das liegt ja definitiv auf m Lima Server und nicht auf meinem Rechner!
EDIT 2: Stelle jetzt fest das die MyFritz Freigabe aber auch über mobiles Netz nicht erreichbar ist
Beitrag zuletzt geändert: 3.2.2018 22:23:08 von turmfalken-nikolai -
Das Script wird nicht geladen, da es einen SyntaxError enthält.
https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Errors/Unterminated_string_literal
Fehler Meldung im Firefox:
SyntaxError: unterminated string literal Kamera.js:1:15
Beitrag zuletzt geändert: 3.2.2018 22:31:04 von cybercrack -
Wie kann das sein? Es ist an dem Script was ja funktionierte nichts geändert worden ausser die DDNS Adresse. Habe eben zur Sicherheit noch einmal das Originalscript geöffnet und ausschließlich die DDNS Daten geändert. Dennoch wird danach das Script auch in IE nicht mehr geladen.
Beitrag zuletzt geändert: 3.2.2018 22:44:43 von turmfalken-nikolai -
Du kannst das ganze auch mit PHP lösen.
$img = 'http://woke92.ddns3-instar.de:8082/video.jpg?ch=1'; header('Content-Type: image/jpeg'); readfile($img);
Nun kannst du dies mit Ajax immer neu laden und schon hast du das Problem mit der https Verschlüsselung gelöst.
Bei mir funktioniert es einwandfrei auch unter Firefox .
Beitrag zuletzt geändert: 3.2.2018 23:13:02 von cybercrack -
So, hab ich geändert. In Firefox und Opera wird zwar nun das Script geladen, in Chrome nicht.
Bilder kommen aber nach wie vor keine!
cybercrack schrieb:
Du kannst das ganze auch mit PHP lösen.
$img = 'http://woke92.ddns3-instar.de:8082/video.jpg?ch=1'; header('Content-Type: image/jpeg'); readfile($img);
Nun kannst du dies mit Ajax immer neu laden und schon hast du das Problem mit der https Verschlüsselung gelöst.
Bei mir funktioniert es einwandfrei auch unter Firefox .
Ajax?? Hä?
Find es toll das Du mir helfen willst! Aber das Problem ist das ich mit diesen Codeschnipseln etc nix anfangen kann. Ich hab absolut keinen Schimmer von solchen Programmiersachen! Und Ajax kenn ich nur als Reiniger
Beitrag zuletzt geändert: 3.2.2018 23:28:50 von turmfalken-nikolai -
Es gibt auch noch eine andere Möglichkeit.
1. Du erstellst eine PHP-Datei mit diesem Inhalt:
<?php $ch = 1; if(isset($_GET['ch'])){ $ch = $_GET['ch']; } $img = "http://woke92.ddns3-instar.de:8082/video.jpg?ch=$ch&uniq=".rand(); header('Content-Type: image/jpeg'); readfile($img);
2. Du änderst deine Bild-Quelle:
http://woke92.ddns3-instar.de:8082/video.jpg
zu
https://turmfalken-nikolai-spandau.de/[pfad]/bild.php
Nun müsste es funktionieren.
Ich habe dies mal Testweise gemacht:
https://tsmr.eu/plugins/546546546.php?ch=1
https://tsmr.eu/plugins/546546546.php?ch=2
https://tsmr.eu/plugins/546546546.php?ch=3
Wie du sehen kannst wird nun dieses Bild unter https angezeigt.
Dabei musst du natürlich wieder den Browser Cache beachten (uniq='+Math.random():
document.images.jpgviewer.src ='https://turmfalken-nikolai-spandau.de/[pfad]/bild.php?ch='+Kanal+'&uniq='+Math.random();
Beitrag zuletzt geändert: 3.2.2018 23:51:24 von cybercrack -
Für alle die es interessiert und die sich auch Gedanken zu einer Lösung gemacht haben:
Durch Zufall stieß in im iThemes Security PlugIn für WordPress auf eine Einstellung die es mir ermöglicht einzelne Inhalte meiner Seite in http anstatt in https anzeigen zu lassen. Dadurch ist die Anzeige meiner Kameras jetzt in allen Browsern möglich! Voraussetzung jedoch ist das ich bei Lima in den Domaineinstellungen das https erzwingen deaktiviere und in WordPress dann alle Inhalte die in https angezeigt werden sollen entsprechend aktiviere.
Dadurch akzeptieren die Browser auch die Kameraanzeige in http!
Danke an alle die versucht haben mir bei der Lösung des Problems zu helfen! -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage