Also hier meine Idee die 100% funktionieren wird.
Zur Vorgeschichte.
Auf meiner Seite hatte ich auch eine Zeit lang 650 MB Große Dateien zum Download druf.
Nir kamen andere Seiten auf die Idee die Dateien direkt zu linken(Ich hasse Diebe.......glei HAND ab).
Nunja ich habe den Ordner mit einer .htaccess geschützt so das ein direkter aufruf über den Browsser zu einen 403 Error führte.
Da PHP serverseitig ausgeführt wird, beachtet PHP die .htaccess nicht mehr, wenn man z.B. den normalen Pfad
http://www.domain.de/downloads/datei.zip in /var/www/virtual/domain.de/htdocs/downloads/datei.zip austauscht.
So kann das PHP-Script(Nur geltend für scripte auf dem eigenem Server) den Download starten aber kein andere Browser.
Natürlich ist das nicht der einzige schutz der noch eingeführt werden müsste.
Z.B. kann wer anderes direkt dein Script an steuern um den Download sofort zu starten.
Da könntest du deinem Script sagen, das er jedes mal eine zufällig generierte nummer in die DB schreibt und das diese dann mit dem Downloader verglichen wird.
Wird die Nummer des Downloaders nicht in der DB gefunden, bekommt er den Download einfach nicht :P
Bla bla bla.......eine recht komplizierte sache.....
Es ist aber machbar......