Thomas: Wie stellt man fest, ob ftp-Verbindung noch aktiv ist?

Hallo Leute,

ich greife per PHP heraus auf einen ftp-Server zu. Es sollen automatisch Dateien heruntergeladen werden. Für den Fall, daß die Verbindung zum Server unterbrochen ist, soll diese erneut hergestellt werden.

Mein Problem ist: ich finde keinen Weg, festzustellen, ob der Server noch da ist, oder nicht.

Befehle wie ftp_systype, ftp_get_option oder ftp_pwd werden alle aus dem Cache ausgelesen, d.h. selbst, wenn ich die Netzwerkverbindung unterbreche, geben diese Befehle nach wie vor die gleichen Werte zurück.

Hat jemand eine Idee?

Danke & Gruß
Thomas

  1. Hallo!

    Mein Problem ist: ich finde keinen Weg, festzustellen, ob der Server noch da ist, oder nicht.

    Befehle wie ftp_systype, ftp_get_option oder ftp_pwd werden alle aus dem Cache ausgelesen, d.h. selbst, wenn ich die Netzwerkverbindung unterbreche, geben diese Befehle nach wie vor die gleichen Werte zurück.

    Wenn die Verbindung unterbrochen wird, existiert dann immer noch die "resource" von ftp_connect()?

    So aus dem Stehgreif würde so etwas wie eine PID-Datei auf dem Server anlegen und z.B. mit ftp_mdtm() oder ftp_size() schauen, ob die PID-Datei aufrufbar ist.
    Die Frage ist, ob das auch gecached wird.
    Du könntest ja mit einem Script eine Datei anlegen, PID-Datei per Script anlegen, Script mit sleep() anhalten für z.B. 15 Sek., Datei von Hand löschen und schauen was das Script nach den 15 Sek. sagt.

    André Laugks

    1. Hello,

      Mein Problem ist: ich finde keinen Weg, festzustellen, ob der Server noch da ist, oder nicht.

      Den Status anfordern mit STAT ?

      Wenn ich das richtig sehe, kannst Du dafür
      http://www.php.net/manual/en/function.ftp-exec.php
      benutzen.

      http://www.elektronik-kompendium.de/sites/net/0902241.htm

      Und wahrscheinlich musst Du das Timeout am Client vernünftig kurz einstellen.
      http://www.php.net/manual/en/function.ftp-connect.php

      Harzliche Grüße vom Berg
      http://bergpost.annerschbarrich.de

      Tom

      --
      Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
      Nur selber lernen macht schlau
      Ein Jammer ist auch, dass die Dummen so selbstsicher und die Klugen voller Zweifel sind. Das sollte uns häufiger zweifeln lassen :-)