Erhöhung der maximalen Uploadgröße beim vtiger CRM

In der Standardkonfiguration eines modernen vtiger CRM (ab Version 6.0.0) kann man die maximale Größe von Uploads über das Backend anpassen. Dabei kann man sich leider nur in ganzen Zahlen zwischen 1 und 3 MByte bewegen. Möchte man das Limit von 3 MByte erhöhen, muss man nur in der Datei

config.inc.php

(zu finden in der obersten Ebene des Installationspfades) folgende Zeile anpassen:

// maximum file size for uploaded files in bytes also used when uploading import files
// upload_maxsize default value = 3000000
$upload_maxsize = 10000000;

vtiger teilt intern die angegebene Zahl durch 1.000.000 und verwendet den ganzzahligen Rest als neues Limit. Damit braucht man sich nicht all zu viel Mühe bei der Berechnung der Byte für eine bestimmte Anzahl von Mega- oder gar Gigabyte zu geben.

In vielen Fällen reicht die eben gezeigte Änderung aber nicht aus, da die Uploads bereits auf der Ebene von PHP oder sogar dem Webserver (Apache) limitiert werden. Dies wird typischer Weise im Test mit einem

Invalid Request

quittiert. Daher muss hier auch noch Hand angelegt werden:

Anpassungen der php.ini

Die Konfiguration des in einer Domain laufenden PHP kann über die Datei

/home/[DOMAIN-NAME]/etc/php5/php.ini

angepasst werden.

1. max_input_time

Je nachdem, wie groß das neue Upload-Limit ist, sollte man prüfen, ob auch die Zeit, wie lange ein Skript laufen darf, angepasst werden muss:

; Maximum amount of time each script may spend parsing request data. It's a good
; idea to limit this time on productions servers in order to eliminate unexpectedly
; long running scripts.
; Note: This directive is hardcoded to -1 for the CLI SAPI
; Default Value: -1 (Unlimited)
; Development Value: 60 (60 seconds)
; Production Value: 60 (60 seconds)
; http://php.net/max-input-time
max_input_time = 120

2. post_max_size

Die Größe, die ein Post-Request höchstens haben darf, muss wahrscheinlich angepasst werden:

; Maximum size of POST data that PHP will accept.
; http://php.net/post-max-size
post_max_size = 10M

3. memory_limit

Bei sehr großen Upload-Limits muss man manchmal sogar die Größe des zur Verfügung gestellten Arbeitsspeichers angleichen, da sonst zwar die Datei hochgeladen, aber nicht verarbeitet werden kann:

; Maximum amount of memory a script may consume (128MB)
; http://php.net/memory-limit
memory_limit = 128M

4. upload_max_filesize

Es muss die maximale Größe einer Datei für einen Upload angepasst werden:

; Maximum allowed size for uploaded files.
; http://php.net/upload-max-filesize
upload_max_filesize = 10M

Anpassungen im Webserver (Apache)

Doch alle Anpassungen im PHP nutzen recht wenig, wenn einige (nicht gesetzte) Optionen im Webserver bereits die Prozesse in ihre Schranken weisen. Darum sollte man zusätzlich sicherstellen, dass diese beiden Variablen passende Werte haben:

IPCCommTimeout 601
FcgidMaxRequestLen 1073741824

Über Nico Danneberg 53 Artikel
Gründer und Chef bei VCAT und dort für Vertrieb und Personal verantwortlich.

Hinterlasse jetzt einen Kommentar

Kommentar hinterlassen

E-Mail Adresse wird nicht veröffentlicht.


*