Co to jest limit pamięci PHP w WordPress i jak go zwiększyć?
Instalujesz wtyczkę, uruchamiasz aktualizację albo próbujesz wygenerować raport i nagle widzisz komunikat: „Allowed memory size of X bytes exhausted". To jeden z najczęstszych błędów w WordPress, który na pierwszy rzut oka wygląda groźnie, ale w większości przypadków da się naprawić w kilka minut.
Ten poradnik tłumaczy, czym jest limit pamięci PHP, dlaczego WordPress go potrzebuje, jak sprawdzić aktualną wartość i jak ją bezpiecznie zwiększyć, bez konieczności kontaktowania się z supportem hostingu.
Czym jest limit pamięci PHP?
PHP to język programowania, na którym oparty jest WordPress. Każdy skrypt PHP uruchomiony na serwerze czy to ładowanie strony, czy wykonywanie zadania w tle, może wykorzystać maksymalnie określoną ilość pamięci RAM. Ta górna granica to właśnie limit pamięci PHP (ang. memory limit).
Domyślna wartość ustawiona przez PHP to zazwyczaj 128 MB. WordPress sam w sobie próbuje zarezerwować co najmniej 40 MB, a dla panelu administracyjnego 256 MB. Problem pojawia się, gdy Twoje wtyczki, motyw lub duże operacje (import danych, generowanie sitemapy, wysyłka newslettera) potrzebują więcej pamięci, niż serwer im przydziela.
Skąd bierze się problem z limitem pamięci?
Zbyt wiele aktywnych wtyczek
Każda wtyczka dołącza swój kod do każdego żądania HTTP, nawet jeśli na danej podstronie nie jest potrzebna. Dziesięć wtyczek o umiarkowanym „ciężarze" może łącznie zużywać mniej pamięci niż jedna źle zoptymalizowana. Warto regularnie audytować listę aktywnych wtyczek i dezaktywować te, których aktualnie nie używasz.
Zasobożerne operacje jednorazowe
Import produktów do WooCommerce, generowanie pliku XML z tysiącami wpisów, masowe przesyłanie obrazów czy tworzenie kopii zapasowej bezpośrednio przez wtyczkęto działania, które mogą jednorazowo potrzebować wielokrotnie więcej pamięci niż zwykłe przeglądanie strony.
Ograniczenia planu hostingowego
Na współdzielonym hostingu WordPress wartość limitu pamięci PHP jest ustalana przez dostawcę i może być niższa niż potrzeby Twojej witryny. W takich przypadkach rozwiązaniem jest zmiana planu, kontakt z supportem lub migracja na VPS z WordPress, gdzie masz pełną kontrolę nad konfiguracją PHP.
Jak sprawdzić aktualny limit pamięci PHP?
Przez panel WordPress
Zaloguj się do panelu administracyjnego i przejdź do Narzędzia → Informacje o witrynie. W sekcji „Serwer" znajdziesz pozycję „Limit pamięci PHP", to wartość ustawiona przez serwer. Poniżej znajdziesz też „Limit pamięci WordPress" to wartość, którą WordPress próbuje zarezerwować.
Przez plik phpinfo()
Możesz też stworzyć tymczasowy plik info.php w katalogu głównym WordPress z zawartością <?php phpinfo(); ?>, wejść na jego adres w przeglądarce i wyszukać frazę memory_limit. Pamiętaj o usunięciu tego pliku po zakończeniu diagnostyki, ujawnia on wrażliwe informacje o konfiguracji serwera.
Jak zwiększyć limit pamięci PHP w WordPress?
Metoda 1 edycja pliku wp-config.php
Otwórz plik wp-config.php w głównym katalogu WordPress (przez FTP lub menedżer plików w panelu hostingu). Przed linią /* That's all, stop editing! */ dodaj:
define( 'WP_MEMORY_LIMIT', '256M' );
Ta dyrektywa zwiększa limit pamięci dla żądań obsługiwanych przez WordPress, ale tylko do wartości dozwolonej przez PHP na serwerze. Jeśli PHP ma ustawione 128 MB, WordPress nie przekroczy tej granicy, nawet jeśli poprosisz o 256 MB.
Metoda 2 edycja pliku .htaccess
Jeśli Twój hosting działa na serwerze Apache i pozwala na zmianę ustawień PHP przez .htaccess, dodaj do tego pliku (znajdziesz go w katalogu głównym WordPress):
php_value memory_limit 256M
Nie wszystkie serwery na to pozwalają, jeśli po dodaniu tej linii strona przestanie działać, usuń ją natychmiast.
Metoda 3 edycja pliku php.ini
Na niektórych hostingach możesz edytować plik php.ini bezpośrednio w panelu klienta lub przez FTP. Znajdź lub dodaj linię:
memory_limit = 256M
Jeśli nie masz dostępu do php.ini, skontaktuj się z supportem hostingu. Zmiana limitu pamięci to standardowa prośba, z którą poradzi sobie każdy doświadczony dostawca.
Metoda 4 zmiana ustawień w panelu hostingu
Wielu dostawców udostępnia graficzny interfejs do zmiany parametrów PHP. Szukaj sekcji „PHP" lub „Konfiguracja PHP" w panelu klienta. Zmiana wartości memory_limit w tym miejscu jest najprostsza i nie wymaga edycji żadnych plików.
Ile pamięci PHP potrzebuje WordPress?
Dla typowej witryny informacyjnej lub bloga z kilkoma wtyczkami 256 MB to bezpieczna i wystarczająca wartość. Sklepy WooCommerce z rozbudowanym katalogiem produktów, wtyczkami do wysyłki i bramkami płatności mogą potrzebować 512 MB lub więcej. Wartości powyżej 512 MB rzadko są uzasadnione, jeśli Twoja strona regularnie przekracza tę granicę, problem leży prawdopodobnie w źle zoptymalizowanej wtyczce lub motywie.
Warto też pamiętać, że limit pamięci PHP to jedno z wielu ustawień wpływających na wydajność. Równie ważna jest optymalizacja bazy danych, jeśli Twoja witryna zwalnia, zadbaj o swoje bazy danych WordPress.
Co zrobić, gdy zwiększenie limitu nie pomaga?
Jeśli po zwiększeniu limitu błąd wciąż się pojawia lub pojawia się, przy niższych wartościach niż oczekujesz, warto:
- Dezaktywować wtyczki jedna po drugiej i sprawdzić, która zużywa nieproporcjonalnie dużo pamięci (pomocna jest wtyczka Query Monitor).
- Przełączyć się tymczasowo na motyw domyślny (Twenty Twenty-Four) i sprawdzić, czy problem leży w motywie.
- Skonsultować się z dostawcą w ramach opieki WordPress i poprosić o profesjonalny audyt wtyczek i motywu, który często ujawnia nieoczywiste problemy z wydajnością.
Jeśli Twoja strona rośnie i regularnie uderza w limity planu współdzielonego, rozważ migrację na hosting stron WWW z wyższymi limitami zasobów lub VPS dają zdecydowanie więcej swobody konfiguracyjnej.
Bezpieczeństwo i kopie zapasowe przy zmianach konfiguracji
Każda edycja pliku wp-config.php, .htaccess czy php.ini to ingerencja w konfigurację serwera. Zanim zaczniesz, upewnij się, że masz aktualną kopię zapasową całej instalacji WordPress. Błąd w składni któregoś z tych plików może skutkować białym ekranem lub błędem 500 — backup pozwoli Ci szybko wrócić do stanu sprzed zmiany.
Dla stron o większym ruchu warto też zastanowić się nad siecią CDN. Szybkie dostarczanie statycznych zasobów przez CDN zmniejsza obciążenie serwera PHP, co pośrednio redukuje ryzyko przekroczenia limitu pamięci przy szczytach ruchu.
Podsumowanie
Limit pamięci PHP to jeden z tych parametrów serwera, o których większość właścicieli stron nie myśli — dopóki nie pojawi się błąd. Na szczęście jego zwiększenie jest zazwyczaj proste i możliwe do wykonania bez technicznego wsparcia. Zacznij od edycji wp-config.php, a jeśli to nie wystarczy — sięgnij po metody serwerowe lub skontaktuj się z dostawcą hostingu.
Pamiętaj, że sam limit to leczenie objawowe. Jeśli Twoja strona regularnie go przekracza, warto zainwestować czas w audyt wtyczek i motywu albo skorzystać z profesjonalnej opieki WordPress, która zadba o wydajność Twojej witryny na co dzień.