Naja ich würde das so angehen:
Alle Downloads über ein PHP-Script, das am Anfang die
IP in eine
SQL-Tabelle speichert, dann über z.B. readfile() die Datei ausgibt und nun zum Schluss den Eintrag aus der
SQL-Tabelle wieder löscht.
Ganz am Anfang musst du allerdings noch abfragen, ob die
IP schon x-mal in der Tabelle ist und dann z.B. via die() eine Fehlermeldung ausgeben.
Zusätzlich wäre es noch gut, wenn du einstellst, dass das PHP-Script nicht abgebrochen wird, wenn der Client die Verbindung abbricht (gibts glaube ich in den INIs), bzw. könntest du noch ausprobieren, ob beim Abbrechen durch den Client noch eine Funkion ausgeführt wird, die über register_shutdown_function() eingetragen wurde.
Edit: Eine andere Möglichkeit wäre, eine Zeitbegrenzung zu machen, also die
IP nach z.B. einer halben Stunde aus der Tabelle rauszuschmeißen, fallst das mit dem austragen nicht ganz funktioniert.
LG, Gerhard