Błąd 413 Request Entity Too Large pojawia się, gdy żądanie klienta przekracza limit serwera. Problem ten dotyczy często przesyłania dużych plików. Wyjaśniamy, co oznacza ten błąd i jak skutecznie go rozwiązać.
Co oznacza błąd 413 Request Entity Too Large?
Błąd 413 Request Entity Too Large to specyficzny kod HTTP. Wskazuje, że serwer nie przetworzy żądania. Powód? Rozmiar żądania jest zbyt duży. Serwer ma ustawiony limit rozmiaru. Przesyłane dane przekroczyły ten limit. Kod błędu 413 należy do grupy błędów 4xx. Te błędy sygnalizują problem między przeglądarką a serwerem. Nazwa błędu została zmieniona. Obecnie to 413 Payload Too Large.
Dlaczego pojawia się błąd 413?
Błąd HTTP 413 występuje z kilku przyczyn. Głównym powodem jest przekroczenie maksymalnego rozmiaru żądania. Limit ten chroni serwer przed przeciążeniem. Firmy hostingowe często ustawiają takie ograniczenia. Dotyczy to zwłaszcza taniego hostingu współdzielonego. Błąd pojawia się przy próbie przesłania dużego pliku. Może to być duży plik multimedialny. Problem występuje też przy wysyłaniu formularzy z dużymi załącznikami. Duże ładunki danych w żądaniach API również powodują ten błąd. Ustawienia serwera odrzucają zbyt duże żądania. Filtracja żądań lub ustawienia buforowania też wpływają na limit. Czasem przyczyną są ustawienia aplikacji. Przykłady to ustawienia w ASP.NET.
Error 413 Request Entity Too Large w wolnym tłumaczeniu oznacza zbyt dużą jednostkę żądania.
Jak naprawić błąd 413 Request Entity Too Large?
Naprawa błędu 413 wymaga zmiany ustawień serwera. Musisz zwiększyć limit rozmiaru żądania. Sposób naprawy zależy od używanego serwera. Najczęściej spotykane to Apache i Nginx. Użytkownicy WordPressa mają dodatkowe opcje. Zawsze warto wykonać kopię zapasową przed zmianami. Zmiany w plikach serwerowych są ryzykowne.
Metody naprawy błędu 413
Istnieje kilka metod rozwiązania problemu. Możesz zmienić konfigurację PHP. Czasem konieczna jest edycja plików serwerowych. Pliki te to .htaccess dla Apache lub nginx.conf dla Nginx. Skontaktowanie się z dostawcą hostingu to inna opcja. Dostawca może pomóc lub sam zwiększyć limit. Ręczne przesłanie pliku przez SFTP lub FTP też bywa rozwiązaniem. Ta metoda omija limity żądań HTTP. Sprawdź też uprawnienia plików na serwerze. Nieprawidłowe uprawnienia mogą blokować przesyłanie.
- Skontaktuj się z dostawcą hostingu.
- Zmodyfikuj parametry ustawiające maksymalny rozmiar żądań.
- Użyj aplikacji FTP/SFTP do przesłania dużego pliku.
- Sprawdź błędy uprawnień serwera.
- Wykonaj kopię zapasową przed wprowadzaniem zmian.
Naprawa błędu 413 w WordPressie
Błąd 413 jest częsty na stronach WordPress. Motywy i wtyczki mogą powodować ten problem. Możesz zwiększyć limit bezpośrednio w plikach WordPressa. Edycja pliku functions.php to jedna z metod. Dodaj kod zwiększający limit przesyłania plików. Inna opcja to modyfikacja pliku .htaccess. Ta metoda działa na serwerach Apache. Zwiększ wartości parametrów upload_max_filesize i post_max_size. Zmiana tych ustawień pozwala na przesyłanie większych plików. Pamiętaj o zgodności ustawień z konfiguracją serwera.
- Edytuj plik functions.php w motywie WordPress.
- Zmodyfikuj plik .htaccess dla serwerów Apache.
- Zwiększ wartości upload_max_filesize i post_max_size w konfiguracji PHP.
Naprawa błędu 413 na serwerze Apache
Na serwerach Apache błąd 413 rozwiązuje się przez edycję pliku .htaccess. Plik ten znajduje się w katalogu głównym strony. Dodaj dyrektywy zwiększające limit. Użyj dyrektywy LimitRequestBody. Ustaw jej wartość na większą liczbę bajtów. LimitRequestBody 52428800 ustawia limit na 50 MB. Zmiany w .htaccess wpływają tylko na katalog, w którym się znajduje. Mogą też wpływać na podkatalogi. Zawsze sprawdź, czy serwer Apache obsługuje .htaccess.
- Zmodyfikuj dyrektywy .htaccess.
- Dodaj dyrektywę LimitRequestBody z odpowiednią wartością.
Naprawa błędu 413 na serwerze Nginx
Serwer Nginx domyślnie ogranicza rozmiar żądania do 1 MB. To często zbyt mało dla współczesnych stron. Aby naprawić błąd 413, zmień konfigurację Nginx. Edytuj plik nginx.conf. Znajduje się on często w /etc/nginx/nginx.conf. Kluczowa dyrektywa to client_max_body_size. Ustaw ją na większą wartość. client_max_body_size 64M pozwala na żądania do 64 MB. Dyrektywę możesz ustawić globalnie w sekcji http. Możesz też ustawić ją dla konkretnego serwera w sekcji server. Możliwe jest również ustawienie limitu dla konkretnej lokalizacji w sekcji location. Po zmianie pliku konfiguracji przetestuj składnię. Użyj komendy nginx -t. Następnie zrestartuj serwer Nginx. Komendy to np. sudo systemctl restart nginx lub sudo service nginx restart. Sprawdź logi błędów Nginx w razie problemów.
- Zmień dyrektywę client_max_body_size w konfiguracji Nginx.
- Edytuj plik nginx.conf.
- Ustaw dyrektywę client_max_body_size w sekcji http, server lub location.
- Przetestuj konfigurację komendą nginx -t.
- Zrestartuj serwer Nginx.
Co to jest „entity” w błędzie 413?
Termin „entity” odnosi się do danych przesyłanych w żądaniu. Jest to treść żądania wysyłana przez klienta do serwera. Może to być plik do przesłania lub dane formularza.
Czy błąd 413 dotyczy tylko przesyłania plików?
Błąd 413 najczęściej pojawia się przy przesyłaniu plików. Może dotyczyć też innych dużych danych. Przykład to duże ładunki danych w żądaniach wysyłanych przez aplikacje lub API.
Czy mogę sam naprawić błąd 413?
Tak, możesz sam naprawić błąd 413. Wymaga to dostępu do plików konfiguracyjnych serwera. Musisz mieć dostęp przez panel hostingowy, SFTP lub SSH. Jeśli nie masz dostępu, skontaktuj się z hostingodawcą.
Jakie są inne nazwy błędu 413?
Błąd 413 Request Entity Too Large ma nową nazwę. Nowa nazwa to 413 Payload Too Large. Czasem pojawia się też jako „Error: request entity too large” w logach aplikacji.
Inne rozwiązania i uwagi
Jeśli problem nadal występuje, rozważ kompresję plików. Zmniejszenie rozmiaru danych może pomóc. Weryfikacja rozmiaru na kliencie zapobiega wysyłaniu zbyt dużych plików. Możesz też zoptymalizować obrazy przed ich przesłaniem. Narzędzia do kompresji obrazów są dostępne online. Dotyczy to np. TinyPNG. Jeśli korzystasz z CDN, sprawdź jego limity. Serwery CDN mogą mieć własne ograniczenia rozmiaru plików. W przypadku częstych błędów 413, rozważ zmianę planu hostingowego. Niektóre plany mają wyższe domyślne limity. Falko Timme, doświadczony administrator Linux, podkreśla znaczenie odpowiedniej konfiguracji serwera.
- Skorzystaj z narzędzi do kompresji plików.
- Implementuj weryfikację rozmiaru plików na kliencie.
- Sprawdź limity rozmiaru na serwerach CDN.
- Rozważ kontakt z hostingodawcą w sprawie planu.
Upewnij się, że masz odpowiednie uprawnienia do modyfikacji plików serwerowych. Brak uprawnień uniemożliwi zapisanie zmian.
Pamiętaj, że zbyt wysokie limity mogą obciążyć serwer. Ustaw rozsądne wartości dostosowane do potrzeb.
Co zrobić, jeśli żadna metoda nie działa?
Jeśli próbowałeś wszystkich metod i błąd nadal występuje, skontaktuj się z pomocą techniczną hostingu. Mogą istnieć inne specyficzne dla serwera ustawienia. Hostingodawca ma pełny dostęp do konfiguracji serwera. Mogą zdiagnozować problem głębiej.
Czy zmiana limitów wpływa na bezpieczeństwo?
Zwiększenie limitów rozmiaru żądania może potencjalnie zwiększyć ryzyko. Zbyt wysokie limity ułatwiają ataki typu DoS. Atakujący może próbować przeciążyć serwer dużymi żądaniami. Ustawiaj limity adekwatne do potrzeb swojej aplikacji. Nie ustawiaj ich na nieograniczone wartości.
Zobacz także: