Upload Script erweiterung
dennis m
- php
hi leute,
ich hab ein upload script erstellt, bzw. von jemand anders erhalten, möchte dieses jetzt nso ändern:
Ich möchte, das Dateien bis max. 5 GB Upgeloadet werden können. Das kann ich auch in der config.php einstellen. Mein Server hat aber nur 5 GB Speicher. Wie kann ich das upload script so umschreiben, das es den Server autom. wechselt, wenn er voll ist?
vg, dennis
oder:
bevor die hauptseite, die sich im stammordner des servers befindet wird geprueft ob dieser voll ist! Ist dieser voll, leitet die die website den besucher auf www.google.de! Ist diese nicht voll, kann der user die seite betreten!
Auch hier bleibt nur zu sagen, siehe meine Antwort im anderen Baum. Mehr als 2MB ist in der Praxis über HTTP (ohne eigenen Server, auf dem man die Zeiten einstellen kann) nicht möglich.
Mahlzeit,
Ich möchte, das Dateien bis max. 5 GB Upgeloadet werden können.
DVD-Images tauschen?
Das kann ich auch in der config.php einstellen. Mein Server hat aber nur 5 GB Speicher. Wie kann ich das upload script so umschreiben, das es den Server autom. wechselt, wenn er voll ist?
"Den Server wechselt"?
Ich schätze mal, Du wirst eher mit der maximalen Laufzeit des PHP-Skripts Probleme bekommen - 5 GB hochzuladen dauert im Normalfall länger, als das Skript ausgeführt wird. Du solltest diesbezüglich mal die PHP-Dokumentation befragen.
Darüber hinaus denke ich, dass wenn "Dein Server" (Webspace? vServer? Root-Server?) 5 GB "Speicher" hat, Du netto KEINE 5 GB zur Verfügung hast (vermutlich wird der Server auch einige Dateien zum Funktionieren brauchen, es werden Logs geschrieben usw.). Schau mal nach, wieviel Platz Du wirklich zur Verfügung hast.
MfG,
EKKi
Also ich hab webspace. davon krieg ich 4,5 GB! Hab die größe jetzt auf 2 GB gedimmt! Trotzdem! Wenn der Server voll ist wäre es möglich diesen zu wechseln?
5 GB hochzuladen dauert im Normalfall länger, als das Skript ausgeführt wird
Ok, gehen dann 2 gb wenn nicht bis wie vil ca.?
vg, dennis
Hallo Dennis M.,
5 GB hochzuladen dauert im Normalfall länger, als das Skript ausgeführt wird
Ok, gehen dann 2 gb wenn nicht bis wie vil ca.?
Es gibt mehrere Beschränkungen:
Wenn es ein Apache-Server ist, wäre es durchaus üblich. dass der bereits schon eine Beschränkung der Filegröße für den Upload besitzt.
Dann begrenzt PHP
- die maximale Upload-Größe für Files,
- die maximale Post-Größe für den gesamten Post
- die maximale Post-Input-Zeit
- die Script-Laufzeit
- den maximalen Speicher für das Script (was hier wahrscheinlich nicht wichtig ist)
Außerdem benötigst Du auf dem Server den Platz einmal im Upload-Temp-Dir und dann nochmal in einem deiner Ablageverzeichnisse, in die Du das File nach dem Upload kopieren willst.
5 GByte am Stück sind schon bei FTP kein Pappenstiel, bei HTTP werden die vermutlich gar nicht zu realisieren sein. Man müsste vermutlich ein spezielles Tool bemühen, was die Files in 20 oder mehr Stücke zerschneidet und auf dem Server wieder zusammenbaut. Dann erscheint es mir realistisch, sowas mit HTTP umzusetzen.
LG
Chris©
5 GB hochzuladen dauert im Normalfall länger, als das Skript ausgeführt wird
Wenn du einen eigenen Server hättest, könntest du die maximale Ausführzeit selber ändern. Allerdings nicht in diesen Dimensionen.
Um dir das mal zu verdeutlichen:
Im Normalfall wird die maximale Ausführzeit in PHP auf 30 Sekunden begrenzt (dies ist ein Standardwert der meisten Hoster).
Nun hast du selbst bei DSL einen maximalen Upload von 128 kbit / sec.
Das bedeutet rechnerisch, das du maximal 3840 kBit (also 480 kByte) hochladen kannst.
Im Übrigen ist bei den meisten Servern der Upload einer Datei bei PHP auf 2 MB begrenzt. Also dürten es auf keinen Fall dann mehr als 2 MB sein (und das wird schon schwer im HTTP - Upload zu realisieren sein).
Hallo,
Nun hast du selbst bei DSL einen maximalen Upload von 128 kbit / sec.
mein DSL hat 1MBit/sec Upload
und außerdem zählt dieScriptausführungszeit erst ab Scriptstart und auch nur für die aktiver Zeit des Scriptes. Der Uploadprozess gehört in den Bereich des OS bzw. des HTTP-Servers. Ein Apache kann hier auvh begrenzt werde bezüglich Uploaddatenmenge und Request-Input-Zeit
Im Übrigen ist bei den meisten Servern der Upload einer Datei bei PHP auf 2 MB begrenzt. Also dürten es auf keinen Fall dann mehr als 2 MB sein (und das wird schon schwer im HTTP - Upload zu realisieren sein).
Ich habe Grafikuploads für eine Druckerei erstellt, die ohne zu mucken 60-80 MBytes uploaden...
LG
Chris©
Mahlzeit,
Also ich hab webspace. davon krieg ich 4,5 GB! Hab die größe jetzt auf 2 GB gedimmt! Trotzdem! Wenn der Server voll ist wäre es möglich diesen zu wechseln?
Ach herrje ... meine Güte ... MUSS man auf sowas antworten? Und ich dachte, ich kenne meine Muttersprache ...
5 GB hochzuladen dauert im Normalfall länger, als das Skript ausgeführt wird
Ok, gehen dann 2 gb wenn nicht bis wie vil ca.?
Das hängt davon ab, mit welcher Geschwindigkeit der Hochladende eben jenes bewerkstelligen kann. Man nehme einen Taschenrechner und rechne aus, wieviel Zeit das Hochladen von x GB bei welcher Geschwindigkeit benötigt ...
MfG,
EKKi
echo $begrüßung;
Ich schätze mal, Du wirst eher mit der maximalen Laufzeit des PHP-Skripts Probleme bekommen - 5 GB hochzuladen dauert im Normalfall länger, als das Skript ausgeführt wird. Du solltest diesbezüglich mal die PHP-Dokumentation befragen.
Du meinst Common Pitfalls aus dem Kapitel Handling file uploads? Und speziell den folgenden Hinweis?
»Note: max_execution_time only affects the execution time of the script itself. Any time spent on activity that happens outside the execution of the script such as [...] time taken by the file upload process, etc. is not included when determining the maximum time that the script has been running.«
echo "$verabschiedung $name";