Homepage selbermachen 7.851 Themen, 35.616 Beiträge

ping mit php?

Active A / 5 Antworten / Flachansicht Nickles

Hallo, ich wollte die members area auf meinen Heim-PC mit Flat legen. Da ich eine dynamische IP habe wird die Adresse automatisch über dyndns.org aktualisiert. Da mein Rechner immer mal wieder offline ist, wollte ich vermeiden das die Besucher eine Fehlermeldung bekommen und einen Hinweis sehen, das die M.A. zeitweise nicht verfügbar ist. Jetzt habe ich gedacht das php bei dem Aufruf der Loginseite auf der HP im Netzt erst meinen Rechner anping und je nach positiven oder negativen Ergebnis reagiert. Die Frage ist wie mache ich das oder gibt es noch eine bessere Lösung, die nicht darauf "reinfällt" wenn jemand anderes dann mit meiner alten IP unterwegs ist und meine noch nicht aktualisiert wurde (oder der Rechner offline ist).

Danke für eure Mühe, Achim

bei Antwort benachrichtigen
Dumistvieh Active A „ping mit php?“
Optionen

Natürlich. Du plazierst auf Deinem "Home-Webserver" eine weitere Datei, etwa mit dem Inhalt "ja, ich bin es". Nach dem "Ping" mußt Du einfach nachschauen, ob diese Datei verfügbar ist. Du könntest die Host angabe beispielsweise so umformulieren:

$sock = fsockopen("domain.tld/ichbins.html",80,5);

Oder aber Du "parst" den Inhalt auch gleich mit. Mit fread liest Du aus dem Socket und vergleichst einfach die Daten. In Deiner Datei schreibst Du einfach rein "ich bin der richtige". Und dann:

$data = fread($sock,1024);
if ( $data == "ich bin der richtige" && isset($sock) )
// Jetzt gehts weiter
else
// Mach sonstwas...

Wahrscheinlich mußt Du aber eine HTTP-Anfrage mit fputs zuerst schicken, jedenfalls mache ich das so. Ob das zum Beispiel bei einer reinen Textdatei nötig ist, wage ich zu bezweifeln.

Gruß
Dumistvieh

--- wie immer: ALLE ANGABEN OHNE GEWEHR ÄH GEWÄHR!
bei Antwort benachrichtigen