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. Dzięki za ten artykuł, też mieliśmy ten problem.

    Które ustawienie ma priorytet?
    W WHM (MultiPHP INI Editor) memory_limit jest ustawiony na 32M.
    W pliku wp-config.php WP_MEMORY_LIMIT jest ustawiony na 96M.

    • Zazwyczaj wp-config, ale zależałoby to od Twojego konkretnego hostingu i ustawień.

      Admin

  2. ale co dokładnie oznacza ten limit pamięci wordpress, ile RAM powinien zużywać wp na serwerze? czy ktoś może podzielić się informacją, czym jest ta rzecz?

    dzięki

    • Limit pamięci informuje WordPress, jak duże mogą być żądania/pliki dla poszczególnych zadań, nie dotyczy to pamięci RAM Twojej witryny, a zużycie pamięci RAM zależy od tego, co znajduje się na Twojej witrynie.

      Admin

  3. dziękuję wpbeginner
    rozwiązałeś mój problem
    ale mam vps, czy mogę zwiększyć limit pamięci
    proszę o odpowiedź

    • Aby dowiedzieć się, co jest dla Ciebie dostępne, musisz skontaktować się ze swoim dostawcą hostingu.

      Admin

  4. Dzięki za post. Naprawdę zadziałało w przypadku mojego problemu, który był dużym bólem głowy przez ostatnie 5 dni. Wielkie dzięki.

  5. Potrzebny jest sposób na rozwiązanie tych problemów z pamięcią bez wyłączania całej witryny lub ryzykowania uszkodzenia konfiguracji poprzez wyłączenie niezbędnych komponentów. Ponadto błędy występują nawet wtedy, gdy limit pamięci jest ustawiony na maksymalną fizyczną pamięć na serwerze (32 GB), a podczas ich występowania nie ma faktycznego skoku zużycia pamięci (narzędzia systemowe nie zgłaszają wzrostu faktycznego użycia pamięci fizycznej).

  6. Bezużyteczne, gdy problem nie zależy od faktycznie wymaganej pamięci – w moim przypadku nadal pojawia się błąd dla losowych wtyczek, niezależnie od tego, ile pamięci określę (do 32 GB). Dobrze byłoby znać rzeczywistą metodę rozwiązywania problemów, aby zobaczyć, co zużywa pamięć.

  7. Żałuję, że wiedziałem to wcześniej. Teraz straciłem dużo ruchu na mojej stronie.
    Mam nadzieję, że teraz jest naprawione!

  8. Działa, dziękuję <3

    Błąd brzmiał:
    Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 491520 bytes) in…

  9. Dziękuję bardzo, bardzo, bardzo, bardzoooooooo, bardzo! Chyba w miarę dodawania kolejnych postów do bazy danych, do jej działania potrzeba więcej pamięci. Różne rzeczy psuły się z tym wewnętrznym błędem przez kilka lat, ale ponieważ nadal mogłem tworzyć nowe posty, powiedziałem sobie: „meh, jedziemy dalej”.

    Potem nie mogłem już publikować! Panika! Wszyscy PANIKUJĄ!!!

    Włączyłem tryb debugowania. Otrzymałem raport debugowania. Zobaczyłem komunikat o wyczerpaniu pamięci. Następnie znalazłem tę stronę i spróbowałem, myśląc: „To pewnie nie zadziała. Zbyt wiele zmian wprowadziłem w motywie i niektórych wtyczkach, aby działały tak, jak chcę. Coś gdzieś zostało zepsute.”

    Nie. Wcale nie. Ta jedna linia kodu rozwiązała problem i pozwoliła mi wrócić do działania!!!! Brawo ja!!!! Brawo ty!!!!

  10. A jeśli masz ten sam problem na stronie administracyjnej, możesz również spróbować

    define( ‘WP_MAX_MEMORY_LIMIT’, ‘512M’ );

    Zadania administracyjne wymagają więcej pamięci niż zwykłe operacje. W obszarze administracyjnym pamięć można zwiększyć lub zmniejszyć z WP_MEMORY_LIMIT, definiując WP_MAX_MEMORY_LIMIT.

    WP_MAX_MEMORY_LIMIT ustawia limit tylko na stronach administracyjnych. To okropna nazwa, ale pochodzi z WordPressa 2.5 i nikt nie odważy się jej teraz zmienić

  11. Dziękuję Dziękuję Dziękuję!
    Nowicjusz rozwiązał ten problem z Twoją pomocą! Jeszcze raz dziękuję.

  12. Próbowałem tego i teraz mój cały panel administracyjny i strona internetowa są niedostępne, wszystko zablokowane przez błąd 500... Nie mam już dostępu do niczego i dlatego nie mogę ponownie użyć Menedżera plików, aby cofnąć zmianę. Jestem całkowicie zagubiony, czy jest szansa, że możesz mi pomóc?

    • Cześć Laura,

      Jeśli masz dostęp do panelu cPanel, możesz cofnąć zmiany w menedżerze plików. Alternatywnie, możesz skontaktować się ze swoim dostawcą hostingu, aby pomógł Ci to naprawić.

      Admin

  13. Muszę użyć wtyczki wpml, problem polega na tym, że edytor tekstu w języku angielskim działa poprawnie, ale kiedy wpisuję tekst w języku niemieckim lub hiszpańskim (języki drugorzędne), edytor nie pojawia się w edytorze tekstu w językach drugorzędnych, więc jak to naprawić?

  14. Skontaktowałem się z firmą hostingową i poprosiłem o zwiększenie pamięci PHP, co rozwiązało problem.

  15. Help! i have this problem :(

    Przekroczono dozwolony rozmiar pamięci 268435456 bajtów (próbowano zaalokować 10489856 bajtów)

  16. Dziękuję bardzo.
    Moje problemy zostały całkowicie rozwiązane dzięki Państwa szczegółowym informacjom i pomocy.
    Bardzo, bardzo dziękuję.
    Majid

  17. Nie jestem w tym tak dobry, jakbym potrzebował, więc nadal mam z tym problemy.

    Otwieram plik config.php i jest tam fragment, który mówi:
    define( ‘WP_MEMORY_LIMIT’, ‘256M’ );

    tylko że już jest napisane:
    define(‘WP_MEMORY_LIMIT’, ‘1024M’);

    Zmieniłem to na 2048 i 4096 bez żadnej zmiany.

    Ale nie ma „That’s all, stop editing! Happy blogging.”

    po
    define(‘WP_MEMORY_LIMIT’, ‘1024M’);
    pojawi się
    define(‘WP_DEBUG’, false);

    następnie
    # To wszystko. Ołówki w dół

    W pliku Sample config.php jest napisane „That’s all, stop editing! Happy blogging.”, ale nie w faktycznym pliku.

    Jakieś rady?

  18. Dzięki… właśnie przeszedłem z Joomli na WordPressa i napotkałem ten problem. Dzięki za łatwe rozwiązanie.

Zostaw odpowiedź