hilfdirselbst.ch
Facebook Twitter gamper-media
Semmelrocc
Beiträge: 3
5. Jun 2003, 14:11
Beitrag #1 von 7
Bewertung:
(1096 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Upload-Formular: Problem mit großen Dateien


Hallo,

habe auf Website ein Formular eingebunden, mit dem man Binärdateien von der lokalen Festplatte auf einen Server laden kann. Ich benutze die PHP-Funktion ftp-put, um das zu bewerkstelligen. Funktioniert soweit auch gut. Mit einer PHP.ini habe ich auch den Upload_Max_Filesize - Flaschenhals von max. 2MB Dateigröße beseitigt und auf 50 MB gesetzt, was auch funktioniert. Leider habe ich festgestellt, dass Uploads mit mehr als 10 MB Dateigröße nicht funktionieren. Am Ende, nachdem er schon fleißig am Laden war, erscheint im Browser ein Popup-Fenster mit der Meldung "Dokument enthält keine Daten". Meine Vermutung ist, dass diese Meldung nicht erscheint, weil die Datei eine bestimmte Größe überschritten hat, sondern weil es einen Timeout gibt.
Wer kann mir bei dem Problem helfen? Ich bin eher Neuling in Sachen Apache und PHP (lerne jedoch täglich kräftig dazu ;-).

Danke für Hilfe! Top
 
X
oesi50  A  S
Beiträge: 2315
5. Jun 2003, 14:37
Beitrag #2 von 7
Beitrag ID: #38389
Bewertung:
(1096 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Upload-Formular: Problem mit großen Dateien


Hi Semmelrocc,
hast Du schon mal versucht, in deiner php.ini den wert

max_execution_time

höher einzustellen?

Grüße Oesi
als Antwort auf: [#38382]
(Dieser Beitrag wurde von oesi50 am 5. Jun 2003, 14:42 geändert)
Top
 
Anonym
Beiträge: 22827
5. Jun 2003, 15:23
Beitrag #3 von 7
Beitrag ID: #38395
Bewertung:
(1096 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Upload-Formular: Problem mit großen Dateien


Ja, der Wert steht momentan auf 500. Zählt denn das Warten auf Komplettierung eines Uploads als Execution Time? Dann müsste ich ja einen ziemlich großen Wert eingeben für jemanden, der mit ISDN versucht, eine 30 MB-Datei hochzuladen...
als Antwort auf: [#38382] Top
 
Semmelrocc
Beiträge: 3
5. Jun 2003, 15:35
Beitrag #4 von 7
Beitrag ID: #38397
Bewertung:
(1096 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Upload-Formular: Problem mit großen Dateien


Oh, der unbekannte war ich. War nicht eingeloggt...
Habe jetzt mal die max_execution_time auf 2500 gestellt, was dazu führte, dass meine besagte Fehlermeldung nun noch früher als vorher auf dem Bildschirm erscheint.
als Antwort auf: [#38382] Top
 
oesi50  A  S
Beiträge: 2315
5. Jun 2003, 15:39
Beitrag #5 von 7
Beitrag ID: #38398
Bewertung:
(1096 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Upload-Formular: Problem mit großen Dateien


2 Fragen:
- wie nimmt Dein Script die Daten entgegen?
- wie nimmt der FTP-Server die Daten entgegen?

Lass doch mal mit 'echo' an den entsprechenden Stellen ein paar Statusmeldungen ausgeben.

Grüße Oesi
als Antwort auf: [#38382] Top
 
Semmelrocc
Beiträge: 3
5. Jun 2003, 16:22
Beitrag #6 von 7
Beitrag ID: #38406
Bewertung:
(1096 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Upload-Formular: Problem mit großen Dateien


Das Formular gibt die Daten mit "Post" weiter, mein Script gibt sie per ftp_put weiter. Ist eine relativ einfache Sache, da User und Password fest vorgegeben sind, das einzige dynamische an dem Skript ist die Dateiauswahl und die Benennung der Datei auf dem Server.

Während ich dies schreibe, habe ich allerdings eine Erfolgsmeldung zu verzeichnen. Das Skript verbindet sich bei Ausführung mit einem anderen Server, wo die Daten gespeichert werden. Bisher hatte ich angenommen, dass ich die php.ini auf dem Speicherort anpassen muss. Aber entscheidend ist ja, wo das Skript ausgeführt wird und nicht, wo die Daten gespeichert werden.
Also habe ich die php.ini auf dem skript-server geladen und siehe da, der Upload hat jetzt doch funktioniert (mit Wert 2500)! :)

Wo ich aber schonmal hier poste: an welchen Hürden kann ich noch scheitern? Die Obergrenze für Uploads habe ich auf 50 MB gesetzt. Das Timeout-Problem sollte vorerst, zumindest für DSL-Nutzer ausgeräumt sein. Gibt es eine sinnvolle Obergrenze für die max_execution_time oder kann ich den Wert ruhigen Gewissens auch für ISDN-Verbindungen anpassen (was bedeuten würde, den Wert auf 5000 zu setzen)?
als Antwort auf: [#38382] Top
 
Miro Dietiker
Beiträge: 699
5. Jun 2003, 16:26
Beitrag #7 von 7
Beitrag ID: #38408
Bewertung:
(1096 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Upload-Formular: Problem mit großen Dateien


PHP verhält sich beim entegegennehmen von grossen Dateien auf
Windows und Unix generell unterschiedlich:
WIN: Die Uploadzeit (auch externe Befehle) zählt zur Executiontime
des PHP Moduls :(
LINUX: Die Uploadzeit wird konsequent den einzelnen Prozessen
zugeordnet, wobei die Datei zuerst bsp. über Apache empfangen wird
(Also Upload auf seine Zeit geht) und erst dann dem PHP-Script
weitergereicht wird!

Hier kann man sich unter win die Zähne ausbeissen :(

GrEeZ: Miro Dietiker
als Antwort auf: [#38382] Top
 
X