tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
3
ZUGRIFFE
133
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von mccae
    mccae mccae ist offline Senfdazugeber
    Registriert seit
    Dec 2007
    Ort
    Wien
    Beiträge
    226
    Huhu,

    Ich habe leider ein kleines Problem.

    Und zwar wurde ein Dateidownload realisiert indem ich meine Datei, folgend auf die entsprechenden Header über PHP ausgebe.

    Dies mache ich, da ein zentrales Skript die richtige Datei zu den Parametern liefern muss.
    Außerdem soll der originale Aufenthaltsort der Dateien, welcher sich außerhalb des Webroots befindet, verschleiert werden und unerreichbar sein.

    Leider kommt es bei größeren Dateien oder Leuten mit schlechter Verbindung zu einer Unterbrechung des Downloads (der Download wird abgeschlossen obwohl noch nicht alle Daten angekommen sind), da ein PHP Script auf dem Server nur maximal 30 Sekunden laufen darf.

    Gibt es dafür eine Lösung?

    X-SendFile hört sich interessant an, wird jedoch von meinem Hoster leider nicht angeboten.
    Ich habe nur Zugriff auf die php.ini.

    Es muss doch eine Möglichkeit geben die entsprechende Datei weiterzugeben und das PHP Script zu beenden...

    Kennt sich jemand aus?

    Liebe Grüße,
    M.C.Caesar
     

  2. #2
    Avatar von Maniac
    Maniac Maniac ist offline Mitglied Smaragd
    Registriert seit
    Apr 2007
    Ort
    Augsburg/Gersthofen (Bayern)
    Beiträge
    1.204
    Stell doch die max_execution_time einfach höher für dieses Script:
    PHP-Code:
    ini_set('max_execution_time'600); 
     
    Die Schweine von heute sind unsere Schnitzel von morgen!

  3. #3
    Avatar von guenter024
    guenter024 guenter024 ist offline Mitglied Silber
    Registriert seit
    Jul 2007
    Beiträge
    98
    Da ich auch downloads über ein php-skript ermögliche (pdf-dateien, tiff-bilder, etc.) möchte hier noch mal nachhaken, da ich hier bezüglich der Skriptlaufzeit bislang noch keine Probleme hatte ..

    Liegt das tatsächlich an der Skriptlaufzeit?
    Wie groß sind denn deine Files?
    Bei mir ist es so, wenn der Download erstmal gestartet ist hat das Skript eigentlich gar keinen Einfluss mehr.
    Ich steige sofort nach Übergabe der header mit exit() aus dem Skript aus und kann ganz bequem weitersurfen.
    Man liefert doch nicht das gesamte file an den header, oder (würde ziemlich lange dauern)?
    Wie hast du das Verweisziel zum Downloadfile definiert?
    Versuche es mal mit
    HTML-Code:
    <a href="download.php?file=irgendwas" target="_blank">
     

  4. #4
    Avatar von mccae
    mccae mccae ist offline Senfdazugeber
    Registriert seit
    Dec 2007
    Ort
    Wien
    Beiträge
    226
    Hallo,

    Zuallererst, vielen Dank für eure Antworten.

    An eine Erhöhung der Scriptlaufzeit habe ich auch gedacht, jedoch kann es bei sehr vielen lange Downloads zu einer hohen CPU Auslastung kommen.

    Die Dateigröße der Dateien startet bei wenigen Kilobyte und geht bis 2Gb.

    Auch wenn man nur eine 5Mb Datei downloadet - der Download wird nach 30 Sekunden abgebrochen.

    Wenn ich die Laufzeit des Scripts wie vorgeschlagen jetzt auf maximal 10 Minuten setzte, wird es funktionieren - der PHP Interpreter ist aber immer noch aktiv.

    Deshalb kommt eine solch' unsichere Erhöhung der Executiontime nicht in Frage.

    Gibt es denn keine Alternative?

    Auf einem anderen Fileserver habe ich X-SendFile laufen, bei meinem Webhost ist diese Apache Erweiterung leider nicht verfügbar da es sich um shared Webspace handelt.

    Ich bräuchte nun eine Lösung für dieses Problem - es muss einfach etwas geben.
    Es wär' ja nicht zu glauben, dass sich beim PHP Development-team noch nie jemand darüber Gedanken gemacht hat.

    Was kann man sonst noch tun?

    mfg,
     

Ähnliche Themen

  1. Dateidownload mit PHP
    Von queicherius im Forum PHP
    Antworten: 6
    Letzter Beitrag: 31.08.09, 20:29
  2. Dateidownload txt
    Von saila im Forum PHP
    Antworten: 4
    Letzter Beitrag: 15.02.07, 18:31
  3. Dateidownload
    Von Soapp im Forum PHP
    Antworten: 7
    Letzter Beitrag: 21.03.06, 13:10
  4. Dateidownload
    Von BigChicken im Forum PHP
    Antworten: 5
    Letzter Beitrag: 27.04.05, 14:03
  5. Antworten: 3
    Letzter Beitrag: 27.12.03, 15:33