Zaufane samouczki WordPress, kiedy ich najbardziej potrzebujesz.
Przewodnik dla początkujących po WordPressie
WPB Cup
25 milionów+
Witryny korzystające z naszych wtyczek
16+
Lata doświadczenia z WordPressem
3000+
Samouczki WordPress od ekspertów

Naprawa: Błąd wyczerpania pamięci WordPress – zwiększ pamięć PHP

Jednym z częstszych błędów, na które napotykają użytkownicy WordPress, zwłaszcza na hostingu współdzielonym, jest błąd wyczerpania pamięci.

Czasami pojawia się z technicznym komunikatem typu „Allowed memory size exhausted”. Innym razem WordPress po prostu wyświetla ogólny ekran „Wystąpił krytyczny błąd na tej stronie”.

Zazwyczaj oznacza to, że Twoja witryna potrzebuje więcej pamięci PHP, niż serwer może aktualnie używać. Może się to zdarzyć podczas instalowania wtyczek wymagających dużej ilości zasobów, przesyłania dużych plików multimedialnych lub przekroczenia limitu planu hostingowego.

W tym przewodniku pokażemy, jak bezpiecznie zwiększyć limit pamięci PHP w WordPress i naprawić błąd. Podzielimy się również najlepszymi praktykami, aby zapobiec jego ponownemu wystąpieniu.

Naprawianie błędu wyczerpania pamięci w WordPress poprzez zwiększenie limitu pamięci PHP

Czym jest błąd wyczerpania pamięci WordPress?

Błąd wyczerpania pamięci w WordPress zwykle występuje, gdy Twoja witryna próbuje użyć więcej pamięci PHP, niż pozwala na to Twój serwer.

Może to spowodować awarię stron, uszkodzenie wtyczek lub wywołanie błędu całego serwisu. W wielu przypadkach zobaczysz teraz komunikat: „Wystąpił krytyczny błąd na tej stronie.”

Krytyczny błąd PHP: wyczerpana pamięć

W tle rzeczywisty błąd wygląda mniej więcej tak:

Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 2348617 bytes)

WordPress jest zbudowany w PHP, który działa na Twoim serwerze i potrzebuje pamięci do funkcjonowania. Jeśli Twoja strona przekroczy dostępny limit pamięci, PHP przestanie działać i pojawi się ten błąd.

Z naszej obserwacji wynika, że wielu użytkowników naprawia ten problem, gdy strony mają:

  • Zainstalowano jedną lub więcej słabo napisanych wtyczek
  • Duże obrazy lub filmy, które zużywają dodatkową pamięć serwera
  • Ograniczone zasoby hostingowe, zwłaszcza na planach współdzielonych

WordPress faktycznie próbuje automatycznie zwiększyć limit pamięci, jeśli jest on niższy niż 64 MB. Jednak w wielu przypadkach to po prostu za mało, zwłaszcza dla nowoczesnych wtyczek i motywów.

Dlaczego możesz nie widzieć faktycznego błędu pamięci

Zastanawiasz się, dlaczego nie widzisz faktycznego błędu pamięci? Ważne jest, aby to zrozumieć, zanim spróbujesz go naprawić.

We wcześniejszych wersjach WordPress często widziałeś komunikat o błędzie wyczerpania pamięci bezpośrednio na ekranie.

Jednak w nowszych wersjach WordPress wyświetla bardziej ogólny komunikat:

„W tej witrynie wystąpił krytyczny błąd. Sprawdź skrzynkę odbiorczą poczty e-mail administratora witryny, aby uzyskać instrukcje.”

Dzieje się tak, ponieważ WordPress domyślnie ukrywa wrażliwe szczegóły błędów. Jest to funkcja bezpieczeństwa, która zapobiega wyświetlaniu odwiedzającym informacji technicznych o Twojej witrynie.

Jednak rzeczywisty błąd jest nadal rejestrowany w tle. Pełną wiadomość można wyświetlić, wykonując następujące czynności:

  • Sprawdź skrzynkę odbiorczą poczty e-mail swojego adresu administratora witryny, aby uzyskać instrukcje.
  • Włączenie trybu debugowania WordPress w pliku wp-config.php.
  • Sprawdzanie dzienników błędów witryny za pośrednictwem panelu sterowania hostingu.

Jeśli sprawdzisz swoją skrzynkę e-mail, możesz znaleźć wiadomość e-mail z tematem „Twoja witryna ma problem techniczny.”

E-mail z problemem technicznym dotyczącym błędu wyczerpania pamięci

W tym e-mailu znajdziesz informację, gdzie wystąpił błąd i dokładny komunikat o błędzie.

Na przykład zobaczysz, że błąd jest spowodowany przez motyw WordPress lub wtyczkę. Na końcu wiadomości e-mail zobaczysz faktyczny komunikat o błędzie.

Błąd wyczerpania pamięci w wiadomości e-mail z technicznym problemem WordPress

Zalecamy włączenie trybu debugowania tylko tymczasowo podczas rozwiązywania problemów. Po znalezieniu błędu nie zapomnij go wyłączyć, aby uniknąć wyświetlania szczegółów technicznych odwiedzającym.

Teraz, w następnych sekcjach, pokażemy Ci, jak ręcznie zwiększyć limit pamięci PHP, aby naprawić błąd i utrzymać płynne działanie Twojej witryny.

📝 Uwaga: Niektóre z tych metod wymagają bezpośredniej edycji plików WordPress. Sugerujemy wykonanie kopii zapasowej witryny przed rozpoczęciem, aby uniknąć pojawienia się dalszych błędów na Twojej stronie.

Gotowi? Zaczynajmy!

Opcja 1: Edycja pliku wp-config.php

Najpierw musisz edytować plik wp-config.php na swojej stronie WordPress. Jest to jeden z głównych plików WordPress znajdujących się w katalogu głównym, zazwyczaj o nazwie public_html.

Będziesz potrzebować klienta FTP, takiego jak FileZilla, lub Menedżera plików w panelu sterowania hostingu.

Następnie musisz wkleić następującą linię w pliku wp-config.php tuż przed linią, która mówi: That's all, stop editing! Happy blogging.

define( 'WP_MEMORY_LIMIT', '512M' );

Ta linia nakazuje WordPressowi przydzielić do 512 MB pamięci PHP.

Jednak ostateczny limit zależy od konfiguracji Twojego serwera. Jeśli Twój hosting wymusza niższy limit, ta zmiana może nie przynieść skutku.

Aby uzyskać więcej informacji, zapoznaj się z naszym przewodnikiem krok po kroku, jak znaleźć i edytować plik wp-config.php.

Po zakończeniu musisz zapisać zmiany i przesłać plik wp-config.php z powrotem na swój serwer.

Możesz teraz odwiedzić swoją witrynę WordPress, a błąd wyczerpania pamięci powinien zniknąć.

Opcja 2: Edycja pliku .htaccess

Następną metodą jest edycja pliku .htaccess. Ten plik znajduje się również w głównym folderze witryny WordPress.

Tutaj musisz wkleić poniższy kod przed linią, która mówi #END WORDPRESS.

php_value memory_limit 512M

Podobnie jak w poprzednim kodzie, poinformuje WordPress, aby zwiększył limit pamięci PHP do 512 MB.

Niemniej jednak pamiętaj, że ta metoda działa tylko wtedy, gdy Twój serwer działa na Apache z mod_php. Jeśli używasz PHP-FPM lub NGINX, ta metoda może nie mieć żadnego efektu.

Po tym po prostu zapisz zmiany i prześlij plik z powrotem na swój serwer WWW. Możesz teraz ponownie otworzyć swoją stronę WordPress, aby sprawdzić, czy błąd limitu pamięci zniknął.

Jeśli nie możesz znaleźć pliku .htaccess, zapoznaj się z naszym przewodnikiem dlaczego plik .htaccess może być brakujący i jak go znaleźć.

Opcja 3: Sprawdzanie pliku php.ini

Jeśli powyższe metody nie działają, warto przyjrzeć się plikowi php.ini.

php.ini to plik, który kontroluje ustawienia PHP, w tym wersję PHP i skrypty PHP. Nie jest to plik rdzenia WordPress, ponieważ zazwyczaj zarządza nim Twój dostawca hostingu.

Możesz sprawdzić jego kod, aby zobaczyć limit użycia pamięci PHP. Więcej szczegółów znajdziesz w naszym przewodniku jak znaleźć i edytować plik php.ini.

Jednakże, ponieważ jest to metoda zaawansowana, zalecamy skontaktowanie się z zespołem wsparcia Twojego dostawcy hostingu internetowego, aby sprawdzić, czy mogą ręcznie zwiększyć limit pamięci WordPress. W przeciwnym razie może to prowadzić do dalszych błędów.

Ponadto niektóre plany hostingu współdzielonego nie pozwalają użytkownikom na dostęp ani modyfikację pliku php.ini.

Możesz przeczytać nasz przewodnik na temat jak prawidłowo prosić o wsparcie WordPress, aby uzyskać więcej informacji.

Opcja 4: Uaktualnienie hostingu WordPress

Jeśli stale napotykasz błąd wyczerpania pamięci, może to oznaczać, że Twoja witryna przerosła swój obecny plan hostingowy.

W miarę jak Twoja strona przyciąga więcej odwiedzających i dodaje więcej treści, wymaga więcej zasobów do płynnego działania. Uaktualnienie planu z większą alokacją pamięci może być trwałym rozwiązaniem.

Rozważ uaktualnienie swojego hostingu WordPress, jeśli:

  • Próbowałeś poprzednich rozwiązań, ale błąd nadal występuje.
  • Twoja witryna znacząco wzrosła pod względem ruchu lub treści.
  • Planujesz dodać funkcje lub możliwości, które wymagają więcej zasobów.

Bluehost oferuje przystępne cenowo i niezawodne plany hostingowe WordPress, które mogą skalować się wraz z potrzebami Twojej witryny. Zapewniają przyjazną dla użytkownika platformę specjalnie zoptymalizowaną pod kątem WordPress, co ułatwia zarządzanie witryną.

Jeśli użyjesz naszego kodu kuponu Bluehost, możesz uzyskać do 61% zniżki na pierwszy zakup. Po prostu kliknij poniższy przycisk, aby go otrzymać:

Bluehost

Jak uniknąć wyczerpania pamięci WordPress

Teraz, gdy naprawiłeś błąd wyczerpania pamięci WordPress, oto kilka proaktywnych kroków, aby zapobiec jego ponownemu wystąpieniu:

  • Dezaktywuj nieużywane wtyczki. Wiele wtyczek przyczynia się do zużycia pamięci. Regularnie przeglądaj zainstalowane wtyczki i dezaktywuj te, których aktywnie nie używasz, aby zwolnić pamięć na ważne zadania.
  • Optymalizuj obrazy. Duże obrazy mogą pochłaniać dużo pamięci. Rozważ użycie wtyczki takiej jak EWWW Image Optimizer do automatycznego kompresowania obrazów przed ich przesłaniem na swoją stronę.
  • Użyj wtyczki buforującej. Wtyczki buforujące przechowują dane witryny, zmniejszając potrzebę ponownego generowania ich przez WordPress przy każdej wizycie. Może to znacznie poprawić wydajność witryny i obniżyć zużycie pamięci.

Najczęściej zadawane pytania dotyczące błędu wyczerpania pamięci WordPress

Co powoduje błąd wyczerpania pamięci w WordPress?

Ten błąd występuje, gdy WordPress potrzebuje więcej pamięci, niż serwer pozwala użyć PHP. Często jest wywoływany przez zasobożerne wtyczki, duże obrazy lub rosnący ruch na niższych planach hostingowych.

Dlaczego widzę tylko komunikat o „krytycznym błędzie”, a nie błąd pamięci?

Nowsze wersje WordPress ukrywają techniczny błąd za ogólnym komunikatem „Wystąpił krytyczny błąd na tej stronie”. Pełny błąd można nadal wyświetlić, włączając tryb debugowania lub sprawdzając logi błędów.

Ile pamięci PHP powinienem przydzielić?

Zalecamy ustawienie limitu pamięci na co najmniej 256 MB. Jest to zazwyczaj wystarczające dla większości stron internetowych, chyba że prowadzisz duży sklep WooCommerce lub używasz zasobożernych wtyczek.

Czy hosting współdzielony może powodować ten błąd częściej?

Tak. Plany hostingu współdzielonego często mają ograniczone zasoby. W miarę rozwoju Twojej witryny może ona szybciej osiągnąć te limity pamięci. Uaktualnienie do lepszego planu hostingowego może zapobiec temu problemowi.

Czy bezpieczne jest ręczne zwiększanie pamięci PHP?

Tak, jest to bezpieczne, jeśli zostanie wykonane prawidłowo. Zalecamy wykonanie kopii zapasowej witryny przed edycją plików takich jak wp-config.php lub .htaccess. Jeśli nie czujesz się komfortowo z tym zadaniem, nasz zespół Pro Services może pomóc.

Dodatkowe przewodniki po błędach WordPress

Jeśli rozwiązujesz inne problemy z WordPress, oto kilka pomocnych przewodników, które napisaliśmy, aby ułatwić Ci pracę.

Mamy nadzieję, że ten artykuł pomógł Ci rozwiązać problem z wyczerpaniem pamięci w WordPress poprzez zwiększenie limitu pamięci PHP. Możesz również zapoznać się z naszym przewodnikiem krok po kroku dla początkujących dotyczący rozwiązywania problemów z błędami WordPress oraz naszą ekspercką listą najczęstszych błędów WordPress.

Jeśli podobał Ci się ten artykuł, zasubskrybuj nasz kanał YouTube po samouczki wideo WordPress. Możesz nas również znaleźć na Twitterze i Facebooku.

Ujawnienie: Nasze treści są wspierane przez czytelników. Oznacza to, że jeśli klikniesz w niektóre z naszych linków, możemy otrzymać prowizję. Zobacz jak finansowany jest WPBeginner, dlaczego to ważne i jak możesz nas wesprzeć. Oto nasz proces redakcyjny.

Ostateczny zestaw narzędzi WordPress

Uzyskaj BEZPŁATNY dostęp do naszego zestawu narzędzi – kolekcji produktów i zasobów związanych z WordPress, które powinien mieć każdy profesjonalista!

Interakcje czytelników

464 CommentsLeave a Reply

  1. define( ‘WP_MEMORY_LIMIT’, ‘256M’ ); działało cały czas. Wielkie dzięki za rozwiązanie.

  2. jesteście niesamowici, rozwiązaliście większość problemów, na które natknąłem się od momentu rozpoczęcia pracy z WordPressem.

  3. Fatal error: Allowed memory size of 67108864 bytes exhausted (tried to allocate 22 bytes) in /home/nels1max/public_html/ngifts/wp-includes/class-wp-hook.php on line 286

    Próbowałem rozszerzyć swój limit, ale to nie zadziałało. Kiedy odświeżam stronę, zmienia się to, co jest po "/wp-includes/" i numer linii, ale żaden z tych plików nie ma miejsca na zwiększenie rozmiaru. Jakieś wskazówki?

    • Spróbuj zwiększyć do 512 MB. Nadal nie ma wystarczającej ilości pamięci dla motywu, którego używasz. Powodzenia! P.S. upewnij się, że masz więcej niż 512 MB pamięci. Zapytaj swojego dostawcę hostingu.

  4. Działa! Dzięki za sugestię. Ale mam pytanie. Znalazłem inny artykuł, który sugeruje zmianę WP_MEMORY_LIMIT w pliku default-constants.php. Czy jest jakaś różnica między tymi dwoma metodami?

      • Plik stałych jest przeznaczony do ustawień, które się nie zmieniają, edycja pliku konfiguracyjnego jest miejscem, w którym dokonasz zmian, które można cofnąć później, gdy błąd już nie występuje.

        Admin

  5. Szukałem wszędzie rozwiązania, a nawet dzwoniłem do hostingu w poszukiwaniu odpowiedzi. Naprawiłem to IDEALNIE! Bardzo, bardzo dziękuję!

  6. Drodzy Państwo,

    otrzymujemy ten błąd
    proszę o informację, jakie jest rozwiązanie?

    Krytyczny błąd: przekroczono dozwolony rozmiar pamięci 2097152 bajtów (próbowano przydzielić 8192 bajtów) w /home/f036v20tz3th/public_html/wp-includes/functions.php w linii 5276

    Pozdrawiam
    KARTIK

  7. Dzięki wielkie chłopaki za ten artykuł! Jaka jest różnica między zmianą wp_memory_limit (wp-config.php) a memory_limit (php.ini)??? Czy to to samo??
    Ten limit pamięci dotyczy pojedynczych sesji czy całej strony WordPress?? Pytam, bo jeśli miałbym 200 odwiedzających w ciągu kilku minut.. musiałbym znacznie podnieść tę liczbę?? Czy próbować utrzymać ją nisko??? Mam nadzieję, że pomożecie mi z tym!

  8. When I changed with 512 M it was failed then I put it define( ‘WP_MEMORY_LIMIT’, ‘2000M’ );
    And it works well.
    /* That’s all, stop editing! Happy blogging. */ :-)

  9. jeśli ten kod nie działa, przeformułuj go na

    //zwiększ limit pamięci WP
    define(‘WP_MEMORY_LIMIT’, ‘256M’);

    • możesz to zmienić, ale zużyło to maksymalnie pamięć i powodowało częste błędy tego samego typu, edytowanie postów na wordpress.com również miało błędy, a tagi i kategorie nie były tam wypełniane.
      w WP wydaje się, że działa, ale znacznie spowolniło.
      Jeśli masz przydzielone więcej pamięci, możesz to zrobić. Zamierzam wykorzystać połowę pamięci przydzielonej przez hosting. sprawdź to w cpanelu.

  10. Dziękuję bardzo! Czekałem na odpowiedź mojego programisty, aby to naprawić, kiedy mogłem to zrobić sam! Tyle czasu zmarnowane, dziękuję za publikację tego!!

  11. Jesteś SUPER! Łatwe do naśladowania i zadziałało! Jestem analfabetą internetowym i udało mi się to naprawić za jednym razem. DZIĘKUJĘ!

  12. Wielkie dzięki za ten artykuł. Naprawdę mi pomógł. Udało mi się rozwiązać ten problem i zająć się budowaniem mojej strony.

  13. Zanim zrobisz cokolwiek z tego… upewnij się, że sprawdziłeś swój główny katalog instalacyjny. Miałem pusty plik „index.htm”, który został pozostawiony przez moją usługę hostingową i całkowicie go przeoczyłem.

  14. Dziękuję bardzo za opublikowanie tego poradnika! Rozwiązał problem z moją stroną internetową, dzięki czemu mogłem znów zacząć oddychać!

  15. Robicie świetną robotę, faceci...

    Za każdym razem, gdy miałem problem, znajdowałem tutaj rozwiązanie...

    Dzięki za świetny artykuł.

  16. Dziękuję!!!! To było wybawienie!!! Próbując rozwiązać problem, dlaczego niektóre e-maile nie są wysyłane przez nasz formularz online, zainstalowałem wtyczkę i spowodowało to ten błąd. Moja strona internetowa znów działa!!!! Jeszcze raz dziękuję!

  17. Postępując zgodnie z tymi krokami, rozwiązałem problem. Dziękuję BARDZO!

  18. To rozwiązało wiele problemów! Możliwość zmiany motywów; możliwość zapisywania moich widżetów – świetna wskazówka! Poświęciłem dużo czasu na szukanie tego rozwiązania.

  19. this doesn’t resolve my issue :( plz now tell me what I can do ?
    still error is there

    Krytyczny błąd: przekroczono dozwolony rozmiar pamięci 268435456 bajtów (próbowano przydzielić 4114136611 bajtów) w C:\xampp\…\wp-includes\functions.php w linii 5163

    • Często pojawia się ten błąd. I nie jestem pewien dlaczego.

      Pochodzi z funkcji wp_is_stream(). Nie jestem pewien, gdzie jest ona używana, co powoduje błąd.

      Niewielkie dochodzenie wykazało, że skomentowanie wp_head() w pliku header.php rozwiązuje problem. Dokładniej, jest to coś podpiętego pod akcję 'wp_head', i myślę, że jeden z filtrów o priorytecie 10. Niestety, po dojściu do tego punktu, błąd magicznie sam się naprawił i zniknął, więc nie byłem w stanie zidentyfikować dokładnej funkcji. Ponadto, wp_is_stream() był używany tylko w 3 lub 4 miejscach, więc może łatwiej byłoby znaleźć winowajcę, po prostu sprawdzając użycia tej funkcji.

  20. To było niesamowite. Na początku byłem sceptyczny, ponieważ robiłem coś takiego po raz pierwszy. W końcu się odważyłem i zadziałało. Dziękuję bardzo.

  21. Wielkie dzięki, uratowałeś mnie. Jesteście moim głównym źródłem pomocy w większości problemów związanych z WordPressem!

Zostaw odpowiedź

Dziękujemy za pozostawienie komentarza. Pamiętaj, że wszystkie komentarze są moderowane zgodnie z naszą polityką komentowania, a Twój adres e-mail NIE zostanie opublikowany. Prosimy NIE używać słów kluczowych w polu nazwy. Prowadźmy osobistą i znaczącą rozmowę.