
🔧 Jak naprawić błąd HTTP w WordPress: pełny przewodnik
Próbują Państwo przesłać obraz do biblioteki multimediów WordPress, a zamiast podglądu pojawia się czerwony baner „HTTP error". Żadnego kodu błędu, żadnego wpisu w logu, żadnej wskazówki co do przyczyny.
To jeden z najbardziej irytujących błędów WordPress właśnie przez swoją niemoc. Nie wiedzą Państwo, gdzie szukać: wtyczki, pamięć serwera, sam plik czy pamięć podręczna przeglądarki. Problem nie jest jednak wyjątkowy, a społeczność przez lata znalazła skuteczne metody, od tych zajmujących sekundy po rozwiązania serwerowe. Zebraliśmy je w jednym materiale: każdy sposób z konkretnymi krokami, kodem i zrzutami ekranu.
💡 Szybki przegląd:
- Proszę zmienić nazwę pliku na małe litery łacińskie z myślnikami i przesłać ponownie
- Proszę wyczyścić pamięć podręczną przeglądarki lub otworzyć panel administracyjny w trybie incognito
- Proszę zwiększyć limit pamięci PHP do 256M przez plik wp-config.php
- Proszę tymczasowo wyłączyć wszystkie wtyczki i przełączyć się na standardowy motyw
- Proszę zmienić bibliotekę przetwarzania obrazów z Imagick na GD Library
Czym jest błąd HTTP w WordPress
HTTP error podczas przesyłania plików multimedialnych to ogólny komunikat, którym WordPress zastępuje zrozumiały opis problemu. W przeciwieństwie do białego ekranu śmierci lub błędu połączenia z bazą danych, awaria przesyłania nie pozostawia wpisu w dzienniku PHP.

Najczęściej błąd występuje podczas przesyłania obrazów przez standardowy uploader, rzadziej, wideo lub innych typów plików. Przyczyn może być wiele: od zerwania połączenia z przeglądarką po brak pamięci RAM na serwerze i konflikt bibliotek PHP.
Główna trudność to brak dziennika. Widzą Państwo jedynie napis „HTTP error" i są zmuszeni testować kolejne metody. Poniżej zostały one uszeregowane od prostych i bezpiecznych po bardziej zaawansowane, aby nie tracili Państwo niepotrzebnie czasu.
1. Szybkie podstawowe poprawki
Proszę zacząć od najprostszych rozwiązań. Te cztery kroki nie wymagają dostępu do plików strony i rozwiązują znaczną część przypadków.
Proszę odświeżyć stronę lub zmienić przeglądarkę
Zerwanie połączenia między przeglądarką a serwerem, krótkotrwały skok obciążenia lub wygaśnięcie sesji WordPress, wszystko to leczy się odświeżeniem strony. Jeśli po F5 błąd nadal występuje, proszę otworzyć panel administracyjny w trybie incognito (Ctrl+Shift+N w Chrome) lub w innej przeglądarce. Rozszerzenia, nieaktualna pamięć podręczna lub stara wersja przeglądarki czasami zakłócają proces przesyłania.

Proszę zmienić nazwę pliku obrazu
WordPress nie lubi duplikatów. Jeśli w bibliotece multimediów znajduje się już plik o takiej samej nazwie, silnik dodaje do nowego kolejny numer, ale czasami mechanizm zawodzi. Rozwiązanie: proszę zmienić nazwę pliku na komputerze przed przesłaniem. Proszę używać małych liter łacińskich i myślników zamiast spacji, na przykład site-banner-02.jpg zamiast Site Banner 02.JPG. Znaki specjalne, cyrylica w nazwach i nadmiernie długie nazwy również mogą wywoływać błąd.
Proszę zmniejszyć rozmiar pliku
Kompresja obrazu często rozwiązuje problem, szczególnie na niedrogich hostingach z ograniczoną pamięcią. Jeśli obraz waży ponad 2-3 MB, proszę przepuścić go przez kompresor przed przesłaniem. Do regularnej pracy proszę korzystać z wtyczki Imagify, która automatycznie kompresuje obrazy podczas przesyłania bez zauważalnej utraty jakości.

Proszę zmienić format obrazu
WordPress kapryśnie reaguje na niektóre formaty: WebP na starszych wersjach PHP, HEIC z urządzeń mobilnych. Proszę przekonwertować plik na sprawdzony JPEG lub PNG i spróbować ponownie. Różnica między „nie przesyła się WebP" a „przesyła się JPG" od razu wskaże problem.
2. Czyszczenie pamięci podręcznej przeglądarki
Pamięć podręczna przeglądarki przechowuje kopie stron i skryptów w celu przyspieszenia ładowania, ale czasami te kopie wchodzą w konflikt z nową wersją panelu administracyjnego WordPress. Rezultat: klikają Państwo „Prześlij", przeglądarka używa starego skryptu, serwer odpowiada błędem.
Szybki sposób dla konkretnej strony, twarde przeładowanie: Ctrl+F5 w Windows/Linux, Cmd+Shift+R w macOS. Jeśli to nie pomogło, proszę wyczyścić pamięć podręczną całkowicie. Poniżej instrukcje krok po kroku dla każdej przeglądarki.
Przeglądarka | Szybkie czyszczenie | Pełne czyszczenie |
|---|---|---|
Chrome | Ctrl+F5 | Ctrl+Shift+Del |
Firefox | Ctrl+F5 | Ctrl+Shift+Del |
Safari | Cmd+Shift+R | Cmd+Alt+E (menu Develop) |
Edge | Ctrl+F5 | Ctrl+Shift+Del |
Opera | Ctrl+F5 | Ctrl+Shift+Del |
Google Chrome
W prawym górnym rogu proszę kliknąć ikonę z trzema kropkami (⋮). Proszę wybrać „Usuwanie danych przeglądania" lub od razu Ctrl+Shift+Del.

W zakładce „Ustawienia podstawowe" proszę zaznaczyć „Obrazy i inne pliki zapisane w pamięci podręcznej" i nic więcej, jeśli nie chcą Państwo stracić haseł i historii. Proszę wybrać zakres czasu „Od początku" i kliknąć „Usuń dane".

Mozilla Firefox
Proszę kliknąć ikonę z trzema liniami (≡) w prawym górnym rogu. Proszę wybrać „Biblioteka", a następnie „Historia".

W menu, które się otworzy, proszę kliknąć „Usuwanie ostatniej historii".

W oknie, które się pojawi, proszę wybrać zakres czasu „Wszystkie".

Z listy rozwijanej „Usuń" proszę wybrać „Wszystko", zaznaczyć tylko „Pamięć podręczna" i kliknąć „OK".

Safari
Proszę otworzyć Safari → „Ustawienia" → zakładka „Rozszerzenia". Proszę włączyć opcję „Pokazuj menu programisty na pasku menu".

W menu „Programista", które się pojawi, proszę kliknąć „Wyczyść pamięć podręczną".
Microsoft Edge
Proszę kliknąć trzy kropki (…) w prawym górnym rogu i wybrać „Ustawienia".

W sekcji „Prywatność, wyszukiwanie i usługi" proszę znaleźć blok „Usuwanie danych przeglądania" i kliknąć „Wybierz elementy do usunięcia".

Proszę zaznaczyć „Obrazy i pliki przechowywane w pamięci podręcznej" i kliknąć „Usuń teraz".

Opera
Proszę kliknąć ikonę Opera (O) w lewym górnym rogu. Proszę wybrać „Narzędzia zaawansowane" → „Wyczyść historię przeglądania".

Proszę wybrać zakres „Od samego początku", zaznaczyć „Obrazy i pliki przechowywane w pamięci podręcznej" i kliknąć „Usuń dane".
3. Wyłączenie wtyczek i motywu
Konflikt rozszerzeń, częsta przyczyna błędu HTTP. Wtyczki bezpieczeństwa i optymalizacji obrazów są najbardziej podejrzane: przechwytują proces przesyłania i mogą go błędnie blokować.

Najszybszy sposób diagnostyki: proszę wejść na serwer przez FTP i zmienić nazwę folderu /wp-content/plugins/ (na przykład na plugins_old). WordPress automatycznie wyłączy wszystkie wtyczki. Jeśli błąd zniknie, proszę przywracać wtyczki pojedynczo, za każdym razem sprawdzając przesyłanie, aż znajdzie Pan/Pani winowajcę. To samo proszę zrobić z folderem motywu: tymczasowo przełączyć się na motyw domyślny (Twenty Twenty-Five lub aktualny w momencie czytania).
Jeśli nie chce Pan/Pani dotykać działającej strony, proszę przeprowadzić diagnostykę na kopii testowej (staging), a na produkcji wyłączyć tylko problematyczną wtyczkę.
4. Ustawienia serwera
Jeśli szybkie metody nie przyniosły rezultatu, problem leży po stronie serwera. Potrzebny będzie dostęp do plików witryny: przez FTP, menedżera plików hostingu lub SSH.
Zwiększ limit pamięci PHP
Brak pamięci PHP to chyba najczęstsza przyczyna błędu HTTP podczas przesyłania plików multimedialnych. Standardowe 128 MB, które ustawia większość hostingów, łatwo zostaje pochłonięte podczas przetwarzania dużego obrazu.

Proszę dodać tę linię w pliku wp-config.php przed komentarzem /* That's all, stop editing! */:
1 define('WP_MEMORY_LIMIT', '256M');
Jeśli nie ma Pan/Pani dostępu do wp-config.php (niektóre hostingi współdzielone), proszę poszukać sekcji „Wersja PHP" w panelu sterowania. Zazwyczaj jest tam ustawienie memory_limit, proszę ustawić 256M bez edytowania plików.
Alternatywne sposoby: przez php.ini (memory_limit = 256M), przez .htaccess (php_value memory_limit 256M) lub w cPanelu przez MultiPHP INI Editor.
Zaktualizuj wersję PHP
WordPress w 2026 roku rekomenduje PHP 8.3 jako optymalną wersję, co najmniej 8.2. Jeśli Pana/Pani witryna działa na PHP 7.4 lub starszym, błędy podczas przetwarzania obrazów to tylko jeden z objawów. W cPanelu aktualizację wykonuje się w sekcji „Wybierz wersję PHP". Przed aktualizacją proszę upewnić się, że motyw i wtyczki są kompatybilne, i wykonać kopię zapasową.
Sprawdź uprawnienia do katalogu przesyłania

Katalog /wp-content/uploads/ powinien mieć uprawnienia 755 dla katalogów i 644 dla plików. Przez klienta FTP: prawy przycisk myszy na katalogu → „Uprawnienia" (Permissions) → proszę ustawić 755 i włączyć „Zastosuj tylko do katalogów" z rekurencyjnym przejściem podkatalogów.

Zbyt restrykcyjne uprawnienia (poniżej 755) blokują zapis, zbyt liberalne (777) to dziura w zabezpieczeniach.
Tymczasowo wyłącz mod_security
ModSecurity to zapora aplikacji webowej na poziomie serwera Apache, która czasami fałszywie reaguje na nieszkodliwe żądania przesłania plików multimedialnych. Tymczasowe wyłączenie modułu pokaże, czy jest on przyczyną.
Proszę dodać w .htaccess:
1 <IfModule mod_security.c> 2 SecFilterEngine Off 3 SecFilterScanPOST Off 4 </IfModule>
Lub przez cPanel: sekcja „Bezpieczeństwo" → „ModSecurity" → wyłączyć dla domeny. Po sprawdzeniu koniecznie proszę włączyć z powrotem, zapora chroni witrynę przed realnymi atakami.
Przełącz bibliotekę obrazów z Imagick na GD Library
WordPress do przetwarzania obrazów używa jednego z dwóch modułów PHP: Imagick lub GD Library. Imagick jest potężniejszy, ale na tanich hostingach brakuje mu pamięci i przesyłanie kończy się błędem HTTP. GD Library jest skromniejsza pod względem możliwości, ale stabilniejsza na słabszych serwerach.
Proszę dodać ten kod w pliku functions.php aktywnego motywu:
1 function wpb_image_editor_default_to_gd($editors) { 2 $gd_editor = 'WP_Image_Editor_GD'; 3 $editors = array_diff($editors, array($gd_editor)); 4 array_unshift($editors, $gd_editor); 5 return $editors; 6 } 7 add_filter('wp_image_editors', 'wpb_image_editor_default_to_gd');
Jeśli nie pomogło, proszę usunąć kod z functions.php.
Ogranicz Imagick do przetwarzania jednowątkowego
Alternatywa dla całkowitego wyłączenia Imagick: ograniczenie go do jednego wątku, aby moduł nie przetwarzał kilku obrazów jednocześnie:
1 SetEnv MAGICK_THREAD_LIMIT 1
Linię dodaje się w pliku .htaccess w katalogu głównym witryny. Zmniejsza to obciążenie pamięci i często rozwiązuje problem bez utraty możliwości Imagick.
5. Metody dodatkowe
Zresetuj niestandardową ścieżkę do biblioteki multimediów
Proszę wejść do panelu administracyjnego: „Ustawienia" → „Multimedia". Jeśli w polu „Pełna ścieżka do plików" wpisana jest niestandardowa ścieżka, proszę ją usunąć i pozostawić pole puste. WordPress powinien przechowywać przesłane pliki wyłącznie w wp-content/uploads. Zewnętrzna ścieżka nie jest rozpoznawana przez dostawcę hostingu i prowadzi do błędu.
Importuj pliki przez Add From Server Reloaded
Gdy ładowanie w bibliotece multimediów nie działa, a wpis trzeba opublikować pilnie, proszę wgrać pliki na serwer przez FTP do katalogu /wp-content/uploads/ i skorzystać z wtyczki Add From Server Reloaded. Skanuje ona katalog i importuje pliki do biblioteki multimediów z pominięciem standardowego uploadera, obsługuje współczesne wersje PHP i jest aktywnie aktualizowana (w przeciwieństwie do oryginalnej wtyczki Add From Server, która nie otrzymywała aktualizacji od 2020 roku).

To tymczasowe obejście. Jeśli błąd HTTP powtarza się regularnie, proszę wrócić do ustawień serwera z rozdziału 4.
Wideo: naprawa błędu krok po kroku
Proszę obejrzeć wizualną demonstrację metod, od szybkich po serwerowe:
⁉️🤔 Najczęściej zadawane pytania
Dlaczego WordPress pokazuje „HTTP error" bez szczegółów?
Tak się utarło historycznie. W przeciwieństwie do białego ekranu śmierci lub błędu połączenia z bazą danych, niepowodzenie przesłania pliku multimedialnego nie generuje wpisu w dzienniku PHP. WordPress nie wie, co dokładnie poszło nie tak: zerwanie połączenia, timeout skryptu czy brak pamięci wyglądają dla niego tak samo. Stąd uniwersalny komunikat „HTTP error" zamiast zrozumiałej informacji.
Czy można po prostu zrestartować serwer?
Jeśli ma Pan/Pani VPS lub serwer dedykowany, tak, restart Apache/Nginx lub
php-fpmczasem pomaga, zwłaszcza gdy procesy się zawiesiły i zużyły całą pamięć. Na hostingu współdzielonym samodzielny restart nie jest dostępny: proszę skontaktować się z pomocą techniczną i poprosić o sprawdzenie obciążenia na Pana/Pani koncie.
Czy pomoże zmiana hostingu?
Jeśli wypróbował Pan/Pani wszystkie metody z artykułu, a błąd powraca regularnie przy różnych obrazach, prawdopodobnie hosting jest przeciążony, a na Pana/Pani konto przydzielono zbyt mało zasobów. Przenosiny na mocniejszy plan taryfowy lub do innego dostawcy (na przykład z 256 MB na 512 MB pamięci PHP) często całkowicie rozwiązują problem.
Czy bezpiecznie jest wyłączyć mod_security?
Dla diagnostyki na 10-15 minut, tak. Ale proszę nie zostawiać go wyłączonego na stałe: mod_security chroni stronę przed SQL injection, XSS i innymi powszechnymi atakami. Jeśli okaże się, że problem leży właśnie po jego stronie, proszę poprosić dostawcę hostingu o dodanie wyjątku dla konkretnej reguły, zamiast wyłączać moduł całkowicie.
Od czego zacząć, jeśli błąd właśnie pojawił się na działającej stronie?
Przede wszystkim tryb incognito lub inna przeglądarka. Jeśli to nie pomoże, proszę zmienić nazwę pliku i wgrać go ponownie. Jeśli błąd nadal występuje, proszę przypomnieć sobie, czy nie instalował Pan/Pani ostatnio nowej wtyczki, i wyłączyć ją. Z naszego doświadczenia wynika, że większość przypadków rozwiązuje się na pierwszych trzech krokach, bez zagłębiania się w ustawienia serwera.
Co zrobić, jeśli nic nie pomogło
Przeszedł Pan/Pani wszystkie metody, a WordPress uparcie odmawia przyjmowania plików. Nie oznacza to, że zrobił Pan/Pani coś nie tak. Najczęściej przyczyną jest połączenie czynników: słaby hosting plus ciężki motyw plus kilka wtyczek, z których każda odgryza po kawałku pamięci PHP.
Kolejność działań: proszę włączyć tryb debugowania WordPress, dodać do wp-config.php:
1 define('WP_DEBUG', true); 2 define('WP_DEBUG_LOG', true);
Proszę spróbować przesłać plik jeszcze raz i sprawdzić log /wp-content/debug.log, być może pojawi się tam konkretny błąd, nieopisany w artykule.
Jeśli log jest pusty, proszę skontaktować się z pomocą techniczną hostingu z jasnym opisem: „WordPress wyświetla HTTP error podczas przesyłania obrazów przez bibliotekę multimediów, limit pamięci PHP 256M, wtyczki były wyłączane, motyw standardowy". Dobry support przejrzy logi serwerowe i znajdzie przyczynę niewidoczną po stronie WordPress.
Jeśli i pomoc techniczna nie pomogła, a strona jest na tanim planie współdzielonym, proszę poważnie rozważyć przeprowadzkę. Różnica między hostingiem za 3 dolary a za 15 dolarów miesięcznie często oznacza po prostu brak tego błędu.



