Hallo zusammen
Wir nutzen die Webstation (DSM 7.1.1-42962 Update 4). Dort haben wir einen Virtual Host eingerichtet. Als Backend dient ein Apache 2.4.
Folgende Probleme haben wir seit kurzem (früher hat alles funktioniert): Wenn wir Dateien (>ca. 2 GB) hochladen via ein php script dann bekommen wir von php den Fehler UPLOAD_ERR_PARTIAL ("The uploaded file was only partially uploaded.")
Kleinere Dateien sind kein Problem. Es scheint kein Timeout Problem zu sein, denn wir können eine kleine Datei langsam (throttling im Browser) hochladen. Dieser Upload dauert dann viel länger als der Upload der grossen Datei.
Die Limits in der php.ini sollten kein Problem sein:
Zu Testzwecken habe ich diese Skripts auf einem Virtual Host mit nginx als Backend ausführen lassen (für Produktion ist das eher keine Option). Kleine Dateien können hochgeladen werden, bei grösseren Dateien bekommt der Client keine Antwort vom Server und der Upload funktioniert nicht.
Ich habe auch ein bisschen an den Timeouts von nginx rumgespielt. Folgendes Skript habe ich auf einem Virtual Host mit Apache und einmal mit nginx laufen gelassen: <?php sleep(3*60); echo "done"; ?>
In der nginx Variante bekomme ich nach 3 Minuten eine Antwort. In der Apache Variante bekomme ich nach 60 Sekunden 504 Gateway Timeout. Ob das einen Zusammenhang mit meinem Problem hat, weiss ich nicht.
Hat jemand eine Idee woran das liegen könnte oder was ich versuchen könnte?
Vielen Dank!
Wir nutzen die Webstation (DSM 7.1.1-42962 Update 4). Dort haben wir einen Virtual Host eingerichtet. Als Backend dient ein Apache 2.4.
Folgende Probleme haben wir seit kurzem (früher hat alles funktioniert): Wenn wir Dateien (>ca. 2 GB) hochladen via ein php script dann bekommen wir von php den Fehler UPLOAD_ERR_PARTIAL ("The uploaded file was only partially uploaded.")
Kleinere Dateien sind kein Problem. Es scheint kein Timeout Problem zu sein, denn wir können eine kleine Datei langsam (throttling im Browser) hochladen. Dieser Upload dauert dann viel länger als der Upload der grossen Datei.
Die Limits in der php.ini sollten kein Problem sein:
INI:
[max_execution_time] => Array
(
[global_value] => 9000
[local_value] => 9000
[access] => 7
)
[max_file_uploads] => Array
(
[global_value] => 1000
[local_value] => 1000
[access] => 6
)
[max_input_time] => Array
(
[global_value] => 900000
[local_value] => 900000
[access] => 6
)
[file_uploads] => Array
(
[global_value] => 1
[local_value] => 1
[access] => 4
)
[memory_limit] => Array
(
[global_value] => 4024M
[local_value] => 4024M
[access] => 7
)
[post_max_size] => Array
(
[global_value] => 32G
[local_value] => 32G
[access] => 6
)
[upload_max_filesize] => Array
(
[global_value] => 32G
[local_value] => 32G
[access] => 6
)
Zu Testzwecken habe ich diese Skripts auf einem Virtual Host mit nginx als Backend ausführen lassen (für Produktion ist das eher keine Option). Kleine Dateien können hochgeladen werden, bei grösseren Dateien bekommt der Client keine Antwort vom Server und der Upload funktioniert nicht.
Ich habe auch ein bisschen an den Timeouts von nginx rumgespielt. Folgendes Skript habe ich auf einem Virtual Host mit Apache und einmal mit nginx laufen gelassen: <?php sleep(3*60); echo "done"; ?>
In der nginx Variante bekomme ich nach 3 Minuten eine Antwort. In der Apache Variante bekomme ich nach 60 Sekunden 504 Gateway Timeout. Ob das einen Zusammenhang mit meinem Problem hat, weiss ich nicht.
Hat jemand eine Idee woran das liegen könnte oder was ich versuchen könnte?
Vielen Dank!