- Co to jest limit pamięci PHP (memory_limit)?
- Błędy związane z wyczerpaniem limitu pamięci
- Jaki powinien być ustawiony limit pamięci PHP?
- Jak sprawdzić limit pamięci (memory_limit) w panelu WordPress?
- Jak zmienić limit pamięci PHP przez FTP?
- Jak zmienić limit pamięci PHP w cPanel?
Zwiększenie limitu pamięci (tzw. memory_limit w PHP) może być potrzebne w sytuacji, gdy:
- używane wtyczki w WordPress nie działają poprawnie,
- strona WWW oparta o WordPress nie ładuje się poprawnie,
- często powtarza się komunikat błędu z treścią nawiązującą do wyczerpania dozwolonej ilości pamięci,
- w panelu administracyjnym WordPress widzisz komunikat o koniecznym zwiększeniu limitu pamięci PHP.
Co to jest limit pamięci PHP (memory_limit)?
Limit pamięci PHP określa maksymalną ilość pamięci, z której może korzystać dowolny skrypt uruchomiony na Twoim serwerze (np. uruchomiony w ramach strony WWW opartej o system WordPress). Każda strona internetowa znajduje się na serwerze, czyli specjalnie skonfigurowanym komputerze, który podobnie jak zwykły komputer posiada ograniczoną ilość zasobów takich jak: moc procesora, pamięć masowa czy pamięć RAM.
Wtyczki używane w systemie WordPress to jedne z wielu elementów, które mogą wykorzystać znaczącą ilość pamięci. Najczęściej zajmują one bardzo mało miejsca i nigdy nie napotkasz żadnych problemów z brakiem pamięci, chyba że Twój serwer ma przydzielone bardzo mało pamięci RAM.
Wyczerpanie limitu pamięci objawia się często białym ekranem z komunikatem błędu PHP, który może blokować dostęp do całej witryny. Wspomniany biały ekran może wyświetlać również wykonywania niektórych funkcji, np. jak wysłanie formularza.
Błędy związane z wyczerpaniem limitu pamięci
Pojawiający się błąd związany z wyczerpaniem limitu pamięci w WordPress jest poważnym problemem, zwłaszcza gdy ma wpływ na całą witrynę – każda mijająca godzina to wielu utraconych gości czy potencjalnych klientów.
Prawdopodobną przyczyną może być duża ilość używanych wtyczek w WordPress lub nawet jedna źle skonfigurowana lub nieoptymalnie zbudowana wtyczka. Większość wtyczek do WordPress tworzonych jest w języku PHP i dlatego podlegają ustawieniom limitu pamięci PHP.
Możesz spróbować znaleźć wtyczkę, która jest przyczyną wyczerpania limitu pamięci, np. wyłączając wtyczki pojedynczo, aż do odzyskania dostępu do witryny. Po zidentyfikowaniu wtyczki powodującej problem, możesz sprawdzić jej dokumentacje w celu weryfikacji jaką ilość pamięci dana wtyczka potrzebuje do optymalnego działania.
Przyczyną może być również zbyt niski ustawiony limit pamięci PHP (tzw. memory_limit). W każdym opisanym powyżej przypadku powinieneś spróbować zwiększyć limit pamięci PHP, jeśli jest to możliwe na Twoim hostingu.
Jaki powinien być ustawiony limit pamięci PHP?
Powinieneś ustawić limit pamięci na możliwie najniższym poziomie, aby pozwolić stronie WWW działać bez przeszkód.
Początkową wartością, z którą możesz spróbować to 128 MB – jest to przyzwoita ilość pamięci, która umożliwia działanie nawet wymagającym wtyczkom. Jeśli to za mało spróbuj ustawić limit pamięci na 256 MB. Ustawienie limitu pamięci na 512 MB to absolutne maksimum, na które powinieneś się zdecydować. Bardzo rzadko pojawia się potrzeba zwiększenia limitu pamięci powyżej 256 MB.
Jak sprawdzić limit pamięci w panelu WordPress?
Po zalogowaniu do panelu administracyjnego WordPress (wp-admin) możesz w łatwy sposób sprawdzić aktualnie ustawiony limit pamięci PHP. W tym celu przejdź do sekcji: Narzędzia -> Stan witryny. Jeśli nie widzisz ustawionego limitu PHP w tym miejscu, możesz zainstalować wtyczkę: Health Check & Troubleshooting.
W opcji Stan witryny w zakładce informacje powinieneś mieć możliwość sprawdzenia jaki jest ustawiony limit pamięci PHP. Jeśli ustawiony jest on na zbyt wysokim poziomie, to jedna z używanych wtyczek może działać nieoptymalnie i wykorzystywać zbyt dużą ilość pamięci serwera. Jeśli jednak limit pamięci (memory_limit) ustawiony jest zbyt nisko, to możesz go zwiększyć za pomocą edycji pliku: wp-config.php.
Jak zmienić limit pamięci PHP przez FTP?
- Połącz się z serwerem FTP, na którym opublikowana jest Twoja strona WWW.
- Przejdź do katalogu głównego, w którym znajdują się pliki WordPress.
- Znajdź i rozpocznij edycję pliku: wp-config.php.
- Podczas edycji pliku wp-config.php uważaj, aby nie edytować niczego poza linią deklarującą ustawiony limit pamięci PHP. W otwartym pliku wp-config znajdź poniższą linię (jeśli nie możesz jej znaleźć, to ją dodaj – najlepiej na końcu pliku):
define ('WP_MEMORY_LIMIT', '128M');
- Zmień zadeklarowaną wartość, np. 128M na 256M.
- Zapisz zmiany w pliku wp-config.php i wyślij zaktualizowaną jego wersję na serwer FTP do tej samej lokalizacji (nadpisz istniejący plik wp-config.php).
- Gotowe! Limit pamięci PHP powinien zostać zwiększony lub zmniejszony – w zależności jaką wartość zadeklarowałeś podczas edycji pliku wp-config.php.
Jak zmienić limit pamięci PHP w cPanel?
Zmiana wartości dla limitu pamięci (memory_limit) możliwa jest po zalogowaniu się do cPanel i przejściu do sekcji: Wybór wersji PHP. Następnie po kliknięciu: Options, na ekranie zostanie wyświetlony formularz, który umożliwi zmianę parametry memory_limit dla PHP.