upload_max_filesize anpassen und das Limit verstehen

 

Beim upload_max_filesize anpassen geht es um eine Einstellung von PHP, die festlegt, wie groß eine einzelne Datei höchstens sein darf, wenn sie über ein Formular auf den Server hochgeladen wird. Steht der Wert auf 2M, sind das zwei Megabyte pro Datei. Ein Foto, das größer ist, wird abgewiesen, ganz gleich wie schnell Ihre Leitung ist. Wer eine Bildergalerie betreibt, stößt früher oder später auf diese Grenze, weil moderne Kameras Bilder mit fünf, zehn oder mehr Megabyte erzeugen.

Schema zu upload_max_filesize: zu große Bilddatei wird an der Größengrenze beim Upload abgewiesen

Wofür upload_max_filesize anpassen gut ist

Der Server soll sich nicht von einer riesigen Datei lahmlegen lassen. Würde jemand versuchen, eine ein Gigabyte große Datei hochzuladen, belegt das Speicher und Rechenzeit. Mit upload_max_filesize zieht der Betreiber eine klare Obergrenze. Das schützt vor versehentlichen Riesen-Uploads und vor Missbrauch. Der Wert wirkt pro Datei, nicht für die gesamte Übertragung.

Wichtig ist eine zweite Einstellung mit ähnlichem Namen: post_max_size. Sie bestimmt, wie viel ein Formular insgesamt schicken darf. Laden Sie mehrere Bilder auf einmal hoch, zählt deren Summe gegen post_max_size. Diese Zahl sollte daher mindestens so hoch sein wie upload_max_filesize, besser etwas höher.

Wie die Werte zusammenhängen

Drei Angaben greifen beim Hochladen ineinander. Die Tabelle zeigt, was jede bewirkt und welche typischen Voreinstellungen ein Hoster setzt.

EinstellungBedeutungTypischer Wert
upload_max_filesizeMaximale Größe einer einzelnen Datei2M bis 64M
post_max_sizeMaximale Größe des gesamten Formulars8M bis 128M
max_file_uploadsAnzahl Dateien pro Vorgang20

Vor dem upload_max_filesize anpassen den Wert finden

Bevor Sie etwas ändern, sollten Sie wissen, was gerade gilt. Dafür gibt es mehrere Wege, je nachdem, worauf Sie Zugriff haben.

  • Eine kleine PHP-Datei mit dem Befehl phpinfo erstellen und im Browser öffnen, dort steht der Wert.
  • Im Kundenmenü des Hosters nach PHP-Einstellungen suchen, viele Anbieter zeigen den Wert dort an.
  • Beim Support nachfragen, falls Sie keine eigenen Einstellungen ändern dürfen.
  • Eine bewusst große Datei testweise hochladen und die Fehlermeldung lesen.

upload_max_filesize anpassen

Auf vielen Servern lässt sich upload_max_filesize über eine Datei namens php.ini ändern. Dort tragen Sie zum Beispiel upload_max_filesize = 32M ein und passen post_max_size entsprechend an. Wo Sie keinen Zugriff auf php.ini haben, bietet das Kundenmenü des Hosters oft einen Regler oder ein Auswahlfeld. Nach der Änderung muss die Einstellung wirksam werden, manchmal dauert das einen Moment oder verlangt ein Neuladen.

Übertreiben Sie es nicht. Ein sehr hoher Wert lädt dazu ein, unkomprimierte Riesenbilder hochzuladen, die später langsam laden. Für eine Fotogalerie reichen oft 16 bis 32 Megabyte pro Datei. Wenn das Bildergalerie Script beim Hochladen abbricht und über die Dateigröße meckert, ist fast immer dieser Wert zu niedrig. Dann wissen Sie jetzt, an welcher Schraube Sie drehen müssen.

Bilder verkleinern statt upload_max_filesize anpassen

Oft ist es klüger, gar nicht erst gegen die Grenze zu laufen. Ein Foto direkt aus der Kamera enthält mehr Bildpunkte, als ein Bildschirm je darstellen kann. Wer es vorher verkleinert, spart Speicherplatz und Ladezeit, ohne dass die Galerie sichtbar leidet.

Schon ein einfaches Bildprogramm auf dem eigenen Rechner reicht aus, um die Auflösung zu reduzieren und die Datei leichter zu speichern. Aus zwölf Megabyte werden so schnell ein bis zwei. Damit bleiben Sie meist unter jeder üblichen Grenze und müssen am Server seltener etwas umstellen. Für eine reine Webgalerie ist eine Kantenlänge von wenigen tausend Pixeln in aller Regel mehr als genug.

Häufige Fragen

Rund um upload_max_filesize geht es meist darum, wo man den Wert ändert und warum der Upload trotzdem klemmt.

Wo ändere ich upload_max_filesize, wenn ich keine php.ini bearbeiten darf?

Auf vielen Servern lassen sich die Werte über die .htaccess setzen, etwa mit php_value upload_max_filesize 32M und php_value post_max_size 64M. Greift das nicht, hilft die PHP-Einstellung im Kundenmenü des Hosters oder eine Nachfrage beim Support, da nicht jeder Server .htaccess-Änderungen zulässt.

Warum bricht der Upload trotz hohem upload_max_filesize ab?

upload_max_filesize gilt pro Datei, für das gesamte Formular zählt zusätzlich post_max_size, die mindestens so hoch sein muss, besser höher. Bremst es weiter, sind oft das memory_limit oder die max_execution_time zu niedrig, weil große Bilder beim Verarbeiten Speicher und Zeit brauchen.

Wie finde ich den aktuell gültigen Wert heraus?

Lege eine kleine Datei mit <?php phpinfo(); ?> an und öffne sie im Browser, dort stehen upload_max_filesize und post_max_size. Alternativ zeigen viele Hoster den Wert im Kundenmenü unter den PHP-Einstellungen an.

Verwandte Themen

upload_max_filesize wirkt nur im Zusammenspiel mit anderen Limits und der richtigen Bildvorbereitung, hier die passenden Artikel.