Hallo,
bist du dir sicher, dass du das wirklich über PHP machen willst? Bei 500MB würde ich mindestens über FTP arbeiten. Der ProFTPD-Server ist eigentlich recht einfach zu konfigurieren und er arbeitet auch mit Datenbanken zusammen. Wäre also kein Problem deine Benutzer in einer DB anzulegen.
Ansonsten:
Ich glaube du brauchst die Timeout-Time vom Apachen nicht hochsetzen, weil der einen Timeout nur rechnet, wenn keine Daten ankommen. Wenn du ständig Daten überträgst, bricht der denke ich nicht ab. Was du aber auf jeden Fall hochsetzen musst ist die max_execution_time in der php.ini. Standardmäßig ist die auf 60 sekunden gesetzt, da du aber wohl kaum 500MB in 60 sekunden übertragen kannst, musst du das ziemlich nach oben setzen. Besser wäre es aber, dass nur für das Upload-Script zu machen, da sonst alle anderen Scripts auch eine extrem hohe Laufzeit zugewiesen bekommen würden. Das macht man über
http://de2.php.net/manual/en/function.ini-set.php. Das einfach am Anfang vom Upload-Script rein, Zeit musst du halt ausrechnen. Selbst bei DSL brauchst du da mindestens ne Laufzeit von 2 Stunden. Dass das deinen Server in die Knie zwingt sollte klar sein.
mfg glitzi