Der Fehler „413 Request Entity Too Large“ tritt in Nginx auf, wenn der Client eine POST-Anfrage mit einer zu großen Nutzlast sendet, die die vom Server erlaubte Maximalgröße überschreitet. Dies betrifft häufig Datei-Uploads, Formularübermittlungen oder API-Requests. In diesem Tutorial lernen Einsteiger, IT-Studierende und Junior Network Engineers praxisnah, wie dieser Fehler behoben werden kann, welche Nginx- und PHP-Einstellungen relevant sind und wie man typische Stolperfallen vermeidet.
Ursache des 413-Fehlers
Der Fehler entsteht, weil Nginx die Größe der HTTP-Anfrage begrenzt. Standardmäßig liegt der Grenzwert bei 1 MB. Überschreitet die Anfrage diesen Wert, bricht Nginx die Verbindung ab und liefert den Statuscode 413 zurück.
Typische Szenarien
- Upload großer Bilder, Videos oder ZIP-Dateien
- API-Clients, die umfangreiche JSON- oder XML-Payloads senden
- Formularübertragungen mit mehreren Dateien oder großen Feldern
Nginx-Konfiguration anpassen
Die zentrale Direktive ist client_max_body_size. Sie begrenzt die Größe der POST-Daten, die Nginx akzeptiert.
Beispiel für die Server-Block-Konfiguration
server { listen 80; server_name example.com;client_max_body_size 50M;
location / {
root /var/www/html;
index index.php index.html;
try_files $uri $uri/ /index.php?$query_string;
}
location ~ .php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php8.1-fpm.sock;
}}
Wichtige Hinweise
client_max_body_sizekann global, prohttp-Block, proserver-Block oder prolocation-Block gesetzt werden.- Wird der Wert global im
http-Block gesetzt, gilt er für alle Server-Blöcke.
PHP Upload-Limits prüfen
Wenn PHP verwendet wird, muss die php.ini ebenfalls entsprechend konfiguriert werden:
Wichtige Direktiven
upload_max_filesize: Maximalgröße einer einzelnen hochgeladenen Dateipost_max_size: Maximale Größe aller POST-Daten inklusive Dateienmemory_limit: Muss groß genug sein, um die Uploads zu verarbeiten
Beispiel php.ini
upload_max_filesize = 50M
post_max_size = 55M
memory_limit = 128M
Nginx neu laden
Nach Änderungen an der Nginx-Konfiguration muss der Server neu geladen werden:
sudo nginx -t
sudo systemctl reload nginx
nginx -t prüft die Konfiguration auf Syntaxfehler, bevor ein Reload durchgeführt wird.
Fehlerbehebung und Debugging
Wenn der 413-Fehler weiterhin auftritt:
- Prüfen Sie, ob
client_max_body_sizekorrekt im aktivenserver– oderlocation-Block gesetzt ist. - Prüfen Sie die PHP-Einstellungen via
phpinfo()oder CLI:
php -i | grep 'upload_max_filesize|post_max_size'
/var/log/nginx/error.log zeigt häufig die Ursache.Best Practices
- Setzen Sie
client_max_body_sizenur so hoch, wie für Ihre Anwendung notwendig. - Synchronisieren Sie PHP- und Nginx-Limits, um Inkonsistenzen zu vermeiden.
- Für APIs kann es sinnvoll sein, unterschiedliche Limits für verschiedene Endpunkte zu setzen.
- Bei großen Uploads prüfen Sie Timeouts (
max_execution_timeundmax_input_timein PHP).
Praxisbeispiel: WordPress Upload erhöhen
# Nginx
server {
...
client_max_body_size 64M;
}
PHP
upload_max_filesize = 64M
post_max_size = 70M
memory_limit = 128M
Nginx Reload
sudo systemctl reload nginx
Nach dieser Konfiguration können Benutzer Dateien bis zu 64 MB hochladen, ohne dass Nginx den 413-Fehler ausgibt.
Fazit für den Web-Administrator
Der 413-Fehler ist in der Regel kein kritischer Serverfehler, sondern ein Indikator für zu niedrige Upload-Limits. Durch das korrekte Setzen von client_max_body_size in Nginx und upload_max_filesize sowie post_max_size in PHP lassen sich Upload-Probleme zuverlässig beheben. Für Einsteiger und Junior Network Engineers ist dies eine grundlegende Fähigkeit, um Web-Apps stabil und benutzerfreundlich zu betreiben.
Konfiguriere Cisco Router & Switches und liefere ein Packet-Tracer-Lab/GNS3
Ich biete professionelle Unterstützung im Bereich Netzwerkkonfiguration und Network Automation für private Anforderungen, Studienprojekte, Lernlabore, kleine Unternehmen sowie technische Projekte. Ich unterstütze Sie bei der Konfiguration von Routern und Switches, der Erstellung praxisnaher Topologien in Cisco Packet Tracer, dem Aufbau und Troubleshooting von GNS3- und EVE-NG-Labs sowie bei der Automatisierung von Netzwerkaufgaben mit Netmiko, Paramiko, NAPALM und Ansible. Kontaktieren Sie mich jetzt – klicken Sie hier.
Meine Leistungen umfassen:
-
Professionelle Konfiguration von Routern und Switches
-
Einrichtung von VLANs, Trunks, Routing, DHCP, NAT, ACLs und weiteren Netzwerkfunktionen
-
Erstellung von Topologien und Simulationen in Cisco Packet Tracer
-
Aufbau, Analyse und Fehlerbehebung von Netzwerk-Labs in GNS3 und EVE-NG
-
Automatisierung von Netzwerkkonfigurationen mit Python, Netmiko, Paramiko, NAPALM und Ansible
-
Erstellung von Skripten für wiederkehrende Netzwerkaufgaben
-
Dokumentation der Konfigurationen und Bereitstellung nachvollziehbarer Lösungswege
-
Konfigurations-Backups, Optimierung bestehender Setups und technisches Troubleshooting
Benötigen Sie Unterstützung bei Ihrem Netzwerkprojekt, Ihrer Simulation oder Ihrer Network-Automation-Lösung? Kontaktieren Sie mich jetzt – klicken Sie hier.

