 Autor: [Monika Wojciechowska](/autorzy/monika-wojciechowska) Specjalistka SEO i treści webowych · Zweryfikowano Kwiecień 2026

1.  [Strona główna](/) ›
2.  [Baza wiedzy](/baza-wiedzy/) ›
3.  WordPress — debug i troubleshooting

# WordPress — debug i troubleshooting błędów

Opublikowano: 9 kwietnia 2026 · Kategoria: WordPress

Biały ekran, błąd 500, baza danych niedostępna — WordPress potrafi zepsuć się w najmniej odpowiednim momencie. Ten przewodnik pokazuje systematyczną diagnostykę: od włączenia logów po identyfikację winowajcy wśród wtyczek, z konkretnymi komendami i ścieżkami plików.

## Włączenie WP\_DEBUG — pierwsza linia diagnozy

Plik `wp-config.php` w katalogu głównym WordPress zawiera stałe sterujące debugowaniem. Domyślnie są wyłączone. Aby włączyć tryb debug z zapisem do pliku (bezpieczne na produkcji — błędy nie są widoczne dla użytkowników):

// wp-config.php — dodaj PRZED linią "That's all, stop editing!"

// Włącz tryb debugowania
define( 'WP\_DEBUG', true );

// Zapisuj błędy do pliku zamiast wyświetlać na ekranie
define( 'WP\_DEBUG\_LOG', true );
define( 'WP\_DEBUG\_DISPLAY', false );

// Wyłącz cache zapytań (pomocne przy diagnostyce DB)
define( 'SAVEQUERIES', true );

// Zwiększ limit pamięci PHP dla WP
define( 'WP\_MEMORY\_LIMIT', '256M' );

Logi trafiają do `wp-content/debug.log`. Możesz je podglądać na bieżąco przez SSH:

\# Obserwuj logi w czasie rzeczywistym
tail -f wp-content/debug.log

# Pokaż ostatnie 50 linii
tail -n 50 wp-content/debug.log

# Szukaj fatal errorów
grep -i "fatal\\|error\\|warning" wp-content/debug.log | tail -20

## Query Monitor — debugowanie w panelu admina

Plugin **Query Monitor** (darmowy, wordpress.org) to najwygodniejsze narzędzie do diagnostyki działającego WordPressa. Wyświetla w pasku admina:

-   Wszystkie zapytania SQL z czasem wykonania i źródłem (która wtyczka/motyw)
-   PHP errors, warnings i notices z pełnym stack trace
-   Wolne zapytania (slow queries) i duplikaty
-   Błędy hooków i filtrów
-   Czas ładowania strony i zużycie pamięci
-   Zmienne środowiskowe PHP i stałe WordPress

Query Monitor jest bezpieczny na produkcji — dane widzi tylko zalogowany administrator. Niezbędny przy diagnozowaniu problemów z wydajnością.

## Biały ekran śmierci (White Screen of Death)

Biały ekran (lub ekran z komunikatem "There has been a critical error") to najczęstszy objaw fatal erroru PHP. Diagnozuj w tej kolejności:

\# Krok 1: Sprawdź debug.log
tail -50 wp-content/debug.log

# Krok 2: Sprawdź logi PHP serwera
# Na Apache/cPanel:
tail -50 /var/log/apache2/error.log
# Na Nginx:
tail -50 /var/log/nginx/error.log

# Krok 3: Wyłącz wszystkie wtyczki przez FTP/SFTP
# Zmień nazwę katalogu: plugins/ → plugins\_disabled/
# Jeśli strona wróciła — problem w jednej z wtyczek

# Krok 4: Przywróć motyw domyślny przez FTP
# Zmień nazwę katalogu motywu w wp-content/themes/

Jeśli masz dostęp WP-CLI, możesz wyłączyć wtyczki bez FTP:

\# Wyłącz wszystkie wtyczki
wp plugin deactivate --all

# Aktywuj po jednej i testuj
wp plugin activate woocommerce
wp plugin activate contact-form-7

# Sprawdź motyw
wp theme activate twentytwentyfour

## 500 Internal Server Error — diagnostyka

Błąd 500 może mieć wiele przyczyn. Sprawdź w tej kolejności:

Przyczyna

Diagnoza

Rozwiązanie

Błąd w .htaccess

Zmień nazwę .htaccess na .htaccess\_old

Wygeneruj nowy: Ustawienia → Bezpośrednie odnośniki → Zapisz

Zbyt duże zużycie PHP

PHP fatal error w logach serwera

Zwiększ memory\_limit i max\_execution\_time w php.ini

Błędna wersja PHP

php -v vs wymagania wtyczki

Zmień wersję PHP w panelu hostingu

Wtyczka z błędem

debug.log z fatal error i nazwą pliku

Wyłącz wtyczkę przez FTP lub WP-CLI

Pełny dysk

df -h na serwerze

Usuń zbędne pliki, wyczyść logi, skompresuj backupy

## "Error establishing a database connection"

Ten komunikat oznacza że WordPress nie może połączyć się z MySQL/MariaDB. Sprawdź:

\# Krok 1: Sprawdź dane w wp-config.php
grep -E "DB\_NAME|DB\_USER|DB\_PASSWORD|DB\_HOST" wp-config.php

# Krok 2: Testuj połączenie ręcznie
mysql -u TWOJ\_UZYTKOWNIK -p -h localhost TWOJA\_BAZA

# Krok 3: Sprawdź stan serwera MySQL
systemctl status mysql
# lub
systemctl status mariadb

# Krok 4: Napraw tabele przez WP-CLI
wp db check
wp db repair

# Krok 5: Sprawdź liczbę połączeń
mysql -e "SHOW STATUS LIKE 'Threads\_connected';"
mysql -e "SHOW VARIABLES LIKE 'max\_connections';"

Na hostingu współdzielonym DB\_HOST to często nie `localhost` ale np. `mysql.twojadomena.pl` — sprawdź w panelu hostingu. Przy zbyt wielu równoczesnych połączeniach hostingodawca może blokować nowe — skontaktuj się z supportem.

## Memory limit PHP — diagnoza i naprawa

\# Sprawdź aktualny limit w WordPress
wp eval "echo WP\_MEMORY\_LIMIT;"
wp eval "echo ini\_get('memory\_limit');"

# Ustaw limit w wp-config.php
# define( 'WP\_MEMORY\_LIMIT', '256M' );

# Lub w .htaccess (jeśli hosting pozwala)
# php\_value memory\_limit 256M

# Lub w php.ini / .user.ini
# memory\_limit = 256M

WordPress wymaga minimum 64 MB, WooCommerce — 128 MB, duże sklepy — 256 MB lub więcej. Jeśli hosting narzuca niższy limit i nie pozwala go zmienić, rozważ migrację do dostawcy z wyższym memory\_limit lub na VPS.

## Health Check — panel diagnostyczny WordPress

WordPress od wersji 5.2 ma wbudowany panel diagnostyczny. Przejdź do **Narzędzia → Zdrowie witryny**. Panel sprawdza:

-   Wersję PHP, MySQL i WordPress
-   Limity PHP (memory, upload, max\_execution\_time)
-   Status HTTPS i certyfikatu SSL
-   Dostępność API REST i loopback connections
-   Nieaktualne wtyczki i motywy
-   Wymagane rozszerzenia PHP (curl, mbstring, imagick)

Zakładka **Informacje o witrynie** zawiera pełen raport techniczny — przydatny przy kontakcie z supportem hostingu.

## WP-CLI — diagnostyka z linii komend

\# Status instalacji
wp core verify-checksums       # Sprawdź integralność plików WP
wp core check-update           # Dostępne aktualizacje

# Baza danych
wp db check                    # Sprawdź integralność tabel
wp db repair                   # Napraw uszkodzone tabele
wp db optimize                 # Optymalizuj tabele (usuń overhead)

# Wtyczki i motywy
wp plugin list --status=active
wp plugin verify-checksums     # Wykryj zmodyfikowane pliki wtyczek
wp theme list

# Cache
wp cache flush                 # Wyczyść object cache
wp rewrite flush               # Przebuduj .htaccess / reguły rewrite

# Użytkownicy
wp user list
wp user get admin              # Sprawdź uprawnienia administratora

## Najczęstsze pytania

Jak włączyć tryb debugowania w WordPress? +

Otwórz plik wp-config.php i ustaw define("WP\_DEBUG", true). Aby zapisywać błędy do pliku zamiast wyświetlać na ekranie, dodaj też define("WP\_DEBUG\_LOG", true) i define("WP\_DEBUG\_DISPLAY", false). Logi trafią do wp-content/debug.log. Pamiętaj wyłączyć WP\_DEBUG na produkcji — ujawnia szczegóły serwera.

Co powoduje biały ekran śmierci (White Screen of Death) w WordPress? +

Biały ekran (WSoD) najczęściej wynika z: (1) wyczerpania limitu pamięci PHP (memory\_limit za niski), (2) błędu w aktywnej wtyczce lub motywie — najczęściej fatal error PHP, (3) braku miejsca na dysku. Diagnoza: sprawdź wp-content/debug.log, tymczasowo zmień nazwę katalogu plugins/, lub zwiększ WP\_MEMORY\_LIMIT do 256M w wp-config.php.

Jak naprawić błąd "Error establishing a database connection"? +

Sprawdź kolejno: (1) dane dostępowe w wp-config.php (DB\_HOST, DB\_NAME, DB\_USER, DB\_PASSWORD) — czy są aktualne, (2) czy serwer MySQL/MariaDB działa (systemctl status mysql), (3) czy osiągnięto limit połączeń (SHOW STATUS LIKE "Threads\_connected" w MySQL), (4) czy nie ma pełnego dysku blokującego zapis. Możesz też użyć WP-CLI: wp db check.

Jak sprawdzić, która wtyczka powoduje problem w WordPress? +

Najszybsza metoda: przez FTP/SFTP zmień nazwę katalogu wp-content/plugins/ na plugins\_old/ — WordPress wyłączy wszystkie wtyczki. Jeśli błąd zniknie, włączaj wtyczki po jednej przez panel admina, żeby zidentyfikować winowajcę. Alternatywnie: WP-CLI wp plugin deactivate --all, a potem wp plugin activate <slug> po kolei. Plugin Health Check & Troubleshooting umożliwia testowanie bez wyłączania dla zalogowanych.

## Sprawdź oferty pasujące do tego scenariusza

Poniżej masz szybkie przejścia do ofert i stron z kodami rabatowymi tam, gdzie są dostępne.

LH.pl

Hosting WordPress z PHP 8.2, dużym memory\_limit i wsparciem technicznym 24/7

Polecany WP

[Aktywuj rabat →](/out/lh-pl)

#Reklama · link partnerski

[Zobacz kod rabatowy →](/kody-rabatowe/lh-pl)

home.pl

Hosting z auto-instalatorem WordPress i codziennym backupem

Auto-backup

[Aktywuj rabat →](/out/home-pl)

#Reklama · link partnerski

[Zobacz kod rabatowy →](/kody-rabatowe/home-pl)

Contabo

VPS z pełną kontrolą PHP — możesz ustawiać memory\_limit i konfigurację bez ograniczeń

Pełna kontrola

[Aktywuj rabat →](/out/contabo)

#Reklama · link partnerski

[Zobacz kod rabatowy →](/kody-rabatowe/contabo)

## Powiązane strony

-   [Bezpieczeństwo WordPress — hardening](/baza-wiedzy/bezpieczenstwo-wordpress-hosting)
-   [MySQL slow query log — optymalizacja zapytań](/baza-wiedzy/mysql-slow-query-log)
-   [PHP-FPM — konfiguracja i optymalizacja](/baza-wiedzy/php-fpm-konfiguracja-optymalizacja)
-   [Wszystkie artykuły](/baza-wiedzy/)