Auto-login in die IP-Kamera
Ich habe eine IP-Kamera und ich würde gerne zeigen, liveview an meiner Webseite.
IP-Kamera nicht zulassen, für Sie anonyme log-in, so dass ich Benutzername und Passwort beim verbinden.
Ich habe javascript:
<img src="http://user:password@camera_ip_address/cgi-bin/jpg/image.cgi?" width="640" height="480" name="refresh">
<script language="JavaScript" type="text/javascript">
image = "http://camera_ip_address/cgi-bin/jpg/image.cgi?"
function Start() {
tmp = new Date();
tmp = "?"+tmp.getTime()
document.images["refresh"].src = image+tmp
setTimeout("Start()", 100)
}
Start();
</SCRIPT>
Und es funktioniert ok, in firefox aber:
http://user:password@camera_ip_number
nicht funktionieren, in anderen Browsern (es popup-Formular zur Eingabe von Benutzernamen und Passwort).
Aber in PHP, die Sie verwenden können, Benutzer:Passwort habe ich bitte mit:
<?php
header('Content-type: image/jpeg');
print( file_get_contents( 'http://user:password@camera_ip_address/cgi-bin/jpg/image.cgi?' ));
?>
natürlich zeigt es nur einen Rahmen, aber Sie nicht haben, um Benutzernamen und ein Kennwort eingeben.
Wie kann ich mich einloggen in IP-Kamera mit PHP ? Wenn ich könnte, melden Sie sich in einer Zeit, während enetering Webseite, mein javascript funktioniert ok, weil die browser werden sich erinnern, Benutzername und Passwort, bis ich den browser schließen.
Ich weiß nicht, wie zu senden Benutzernamen und Passwort, um sich anzumelden.
Sorry für mein Englisch.
- Sind Sie Apache für Ihre Website (nicht die Kamera)?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ok, also ich habe es die Arbeit mit PHP und JavaScript. Vielleicht wird es hilfreich sein für jemanden:
Speichern Sie die PHP-Datei wie zum Beispiel snapshot.php:
In der HTML-Datei, fügen Sie dieses Skript:
Funktioniert es unter allen Browsern. Wenn ich die Zeitüberschreitung weniger als 300, es gibt eine gewisse Verzögerung. Ich weiß nicht warum, das wäre verursacht durch; vielleicht ist die Internetverbindung oder die website-Geschwindigkeit.
Können Sie Apache verwenden
mod_rewrite
statt - Weniger Aufwand von der PHP-stack, und wahrscheinlich in der Regel schneller. Sehen auf dieser Seite für weitere Informationen.Wählen Sie eine dieser.
Apache .htaccess - Ihre Seite Anfragen
http://yoursite/livecam/image.jpg
, die durch die Apache-proxy, um Ihre Kamera.In PHP, erstellen Sie eine Datei namens image.php - Ihre Seite Anfragen
http://yoursite/image.php
, die Bäche das Bild, um was es wünscht.Beide proxy das Bild über Ihren server. Es ist in der Regel eine schlechte Praxis geben den Benutzernamen und das Passwort auf einer öffentlichen Seite, selbst wenn sich ein Angreifer kann nicht Schaden etwas Sorge.
Sehen
readfile()
auf PHP.netDein code würde wie folgt Aussehen (ersetzen image.php mit livecam/image.jpg wenn Sie mit der Apache-version). Ich habe auch verkürzt deinen code ein wenig.