Um bei einem Typo3-Projekt die maximale Größe für hochzuladende Dateien zu erhöhen, sind unter Umständen mehrere Schritte notwendig. In der Standardkonfiguration von Typo3 ist derzeit bei 10 Megabyte Schluss. Aus meiner Sicht völlig aus­reichend! Aber wenn es unbedingt ein etwa 30 Mega­byte großes PDF sein muss, was den Besuchern der Webseite zum Download angeboten werden soll, dann heißt es Anpassen der Konfiguration oder den Redakteur davon überzeugen, dass bei ISDN die ca. 1 Stunde und 6 Minuten etwas zu lang für den Download sein dürften. Zum Veranschaulichen von Downloadzeiten gibt es reihenweise Webseiten im Netz, wenn man keine Lust auf Stift, Zettel und komplexer Mathematik hat ;-)

Sollten die mahnenden Worte nicht die erforderliche Einsicht bewirken und eine Komprimierung der PDF nicht möglich sein, dann heißt es Anpassen der Max Upload Size Einstellungen in der Typo3-Installation und u.U. auch noch auf dem Server.

Mein erster Schritt wäre im Tpo3-Backend der Bereich Installation.

Typo3-Backend: All Configuration

Aktivieren des Installations-Tools unter typo3conf/ENABLE_INSTALL_TOOL bzw. die Datei ENABLE_INSTALL_TOOL unter /typo3conf anlegen und im Anschluss unter Admin-Werkzeuge -> Installation -> 5: All Configuration den Wert für [BE][maxFileSize] auf 32.720 (30 Megabyte) erhöhen.

Typo3 maxFileSize erhöhen

Typo3 maxFileSize auf 30.720 kByte erhöhen

Bearbeiten der Typo3-Konfigurationsdateien

Ein direktes Bearbeiten der typo3conf/localconf.php geht das oft schneller.

$typo_db_extTableDef_script = "extTables.php";
$TYPO3_CONF_VARS["BE"]["maxFileSize"] = 30*1024;

In der Datei typo3conf/extTables.php dürfen die folgenden Zeilen nicht fehlen und müssen mit den entsprechenden Maximalwerten versehen werden; in meinem Beispiel also mit 30 Megabyte.

/* Set max media file size to 30 MB */
$GLOBALS['TCA']['tt_content']['columns']['media']['config']['max_size'] = 30*1024;
/* Set max number media file size to 30 */
$GLOBALS['TCA']['tt_content']['columns']['media']['config']['maxitems'] = 30;
/* Set max multimedia file size to 30 MB */
$GLOBALS['TCA']['tt_content']['columns']['multimedia']['config']['max_size'] = 30*1024;
/* Set max number multimedia file size to 30 */
$GLOBALS['TCA']['tt_content']['columns']['multimedia']['config']['maxitems'] = 30;

Nachdem die Änderungen in den beiden php-Dateien vorgenommen wurden, müssen die temporären Config-Dateien unter /typo3conf gelöscht werden. Ein Klick auf Alle Caches löschen im Typo3-Backend bewirkt dasselbe.

Nun wird im Backend unter Admin-Werkzeuge -> Konfiguration -> $TYPO3_CONF_VARS (Global Configuration) -> [BE] der Wert für [maxFileSize] mit 30720 angegeben. Lässt sich eine Datei mit bis zu einer Größe von 30 Megabyte jetzt hochladen, dann sind die notwendigen Konfigurationsschritte an dieser Stelle beendet und das Typo3-Projekt lässt nun größere Dokumente bei Uploads zu.

Ist das nicht der Fall, dann gibt es sicherlich eine serverseitige Beschränkung.

Serverseitige Upload-Beschränkungen

Auf einem Unix-Server (bei Windows sicherlich auch) lassen sich global eine ganze Reihe von Beschränkungen festlegen. Eine davon ist die maximale Größe für Dateien, die sich hochladen lassen.

Oft reicht es völlig aus, dass in der Konfiguration des virtuellen Hosts (wenn man hierauf Zugriff hat) der entsprechende Wert erhöht wird. Hierbei wird, im Gegensatz zur serverweiten Anpassung der Uploadgröße in der php.ini, nur eine Anpassung für das jeweilige Webprojekt vorgenommen. Falls der Provider ein Überschreiben dieser Einstellungen per htaccess-Datei zu lässt, so reicht es auch aus, diese beiden Zeilen in der .htaccess abzulegen.

<Directory "/pfad/zur/document/root">
...
       php_admin_flag engine On
       php_admin_value upload_max_filesize 30M
...

Anpassungen in der php.ini

Bearbeiten (hier PHP5 unter Debian Lenny, Pfade ggf. abweichend):

mcedit /etc/php5/apache2/php.ini
upload_max_filesize = 30M

Änderungen mit [F2] speichern und mit [F10] den Editor verlassen. Im Anschluss muss der Apache neu gestartet werden.

apache2ctl -t
/etc/init.d/apache2 force-reload

Eine kurze Überprüfung per phpinfo sollte nun für upload_max_filesize eine Größe von 30 Megabyte anzeigen. Jetzt sollte auch die 30 MByte PDF ihren Weg in das Typo3-System schaffen, falls nicht der Redakteur selbst nur hinter einer langsamen Internetverbindung sitzt und es zu Timeout-Abbrüchen kommt.