Upload schlägt fehl bei großen Bildern in der Galerie

 

Der Upload schlägt fehl selten bei kleinen Bildern. Sobald du ein großes Foto hochlädst, bricht der Vorgang ab oder bleibt hängen. Dieses Verhalten hat fast immer mit Grenzwerten zu tun, die PHP für Uploads vorgibt. Überschreitet ein Bild eine dieser Grenzen, wird der Upload abgewiesen, bevor er fertig ist. Welche Grenze greift, lässt sich gezielt eingrenzen und anheben.

Upload großer Bilder in die Galerie schlägt fehl: Ein uebergrosses Foto wird durch ein enges Upload-Rohr in einen Server gequetscht, ein Schieberegler

Warum der Upload schlägt fehl bei großen Dateien

PHP begrenzt Uploads aus gutem Grund: Ein Server soll nicht durch riesige Dateien oder ewig laufende Vorgänge blockiert werden. Diese Grenzen sind als feste Werte hinterlegt. Bei kleinen Bildern fällt das nie auf. Erst ein hochauflösendes Foto von mehreren Megabyte stößt an eine dieser Schranken, und der Upload endet vorzeitig oder ohne sichtbare Meldung.

Upload schlägt fehl: diese Grenzwerte zählen

Vier Einstellungen entscheiden darüber, ob ein großes Bild durchkommt. Die Tabelle zeigt, was sie steuern und woran du das Überschreiten erkennst.

EinstellungSteuert
upload_max_filesizeGröße einer einzelnen Datei
post_max_sizeGesamtgröße einer Sendung
max_execution_timeMaximale Laufzeit des Scripts
memory_limitVerfügbarer Arbeitsspeicher

Wichtig ist das Zusammenspiel: post_max_size sollte stets größer sein als upload_max_filesize, da die gesamte Sendung immer etwas mehr umfasst als die reine Bilddatei. Steht die Dateigröße höher als die erlaubte Sendung, schlägt der Upload trotz passend wirkender Einstellung fehl. Bei sehr großen Bildern spielt zusätzlich der Speicher eine Rolle, weil das Verkleinern zur Vorschau Arbeitsspeicher braucht.

Upload schlägt fehl? So hebst du die Grenzen an

Gehe die Stellschrauben der Reihe nach durch. Je nach Hoster änderst du die Werte in einer Konfigurationsdatei oder im Kundenmenü.

  • Setze upload_max_filesize über die Größe deiner größten Bilder.
  • Stelle post_max_size noch etwas höher als die Dateigröße.
  • Erhöhe max_execution_time, falls der Upload bei langsamer Leitung abbricht.
  • Hebe memory_limit an, wenn beim Verkleinern eine leere Seite erscheint.
  • Lade nach jeder Änderung ein großes Testbild hoch.

Hast du keinen Zugriff auf die PHP-Konfiguration, bieten viele Hoster diese Werte im Kundenmenü zum Einstellen an. Findest du dort nichts, hilft eine kurze Anfrage beim Support, der die Grenzen oft für dein Paket anpassen kann. Ändere immer nur einen Wert auf einmal, damit du die Wirkung klar zuordnen kannst.

Bilder vor dem Upload verkleinern

Oft brauchst du die volle Auflösung einer Kamera im Web gar nicht. Ein Bild mit mehreren tausend Pixeln Kantenlänge sieht im Browser nicht besser aus als eine auf Webgröße reduzierte Fassung, belastet den Upload aber unnötig. Verkleinerst du Fotos vorher mit einem Bildprogramm auf eine vernünftige Breite, sinkt die Dateigröße stark und der Upload gelingt zuverlässig. Das spart zugleich Speicherplatz auf dem Webspace und beschleunigt später den Aufbau der Galerie für deine Besucher.

Den richtigen Wert für deine Bilder finden

Wie hoch du die Grenzen setzt, hängt von deinen Fotos ab. Es bringt nichts, die Werte ins Extreme zu treiben, wenn deine größten Bilder ohnehin darunter bleiben. Diese Überlegungen helfen beim Festlegen.

  • Sieh nach, wie groß deine größte Bilddatei tatsächlich ist.
  • Lege upload_max_filesize mit etwas Reserve darüber fest.
  • Halte post_max_size eine Stufe höher, damit zusätzliche Formulardaten Platz haben.

Mit diesen Werten läuft der Upload zuverlässig, ohne dass du dem Server unnötig hohe Grenzen zumutest. Steigen deine Bilder später in der Größe, passt du die Werte einfach erneut an. So bleibt die Einstellung zu deinen tatsächlichen Dateien passend und der Server muss nicht mehr Last vertragen als nötig.

Häufige Fragen

Beim Anheben der Upload-Grenzen tauchen immer wieder dieselben Detailfragen auf, etwa zu konkreten Werten und zur Reihenfolge.

Welche Werte sollte ich für upload_max_filesize und post_max_size setzen?

Setze upload_max_filesize über die Größe deines größten Bildes, zum Beispiel 16M, und post_max_size immer etwas höher, etwa 20M. post_max_size muss größer als upload_max_filesize sein, weil die gesamte Sendung mehr umfasst als die reine Bilddatei.

Wie finde ich heraus, welche Upload-Limits aktuell wirklich gelten?

Lege eine Datei mit dem Inhalt <?php phpinfo(); ?> an, rufe sie im Browser auf und suche dort upload_max_filesize, post_max_size, max_execution_time und memory_limit. So siehst du die echten Werte und kannst sie gezielt in php.ini oder per .htaccess anheben.

Der Upload bricht trotz hoher Dateigrenze ab, woran liegt das noch?

Neben den vier Hauptwerten begrenzen oft max_input_time und beim Apache-Server das LimitRequestBody den Upload. Bei langsamer Leitung hilft ein höheres max_execution_time, zum Beispiel 120, und bei einer leeren Seite während des Verkleinerns ein größeres memory_limit.

Verwandte Themen

Wer an diesen Grenzwerten dreht, stößt schnell auf die folgenden Themen rund um PHP-Einstellungen und Galerie-Leistung.