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

⚡ W skrócie · 9 min czytania

-   Diagnostyka błędów WordPress krok po kroku: WP\_DEBUG, debug.log, biały ekran śmierci, błąd 500, Error establishing a database connection, memory limit, konflikty wtyczek.
-   Włączenie WP\_DEBUG - pierwsza linia diagnozy.
-   Query Monitor - debugowanie w panelu admina.
-   Biały ekran śmierci (White Screen of Death).
-   500 Internal Server Error - diagnostyka.

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 "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 "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 "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/)
-   [Hosting WordPress dla małej firmy — na co zwrócić uwagę w 2026
    
    Hosting WordPress dla małej firmy — wymagania techniczne, managed vs shared, bezpieczeństwo i wydajność. Sprawdź, na co…
    
    ](/baza-wiedzy/hosting-wordpress-dla-malej-firmy-na-co-zwrocic-uwage/)
-   [Hosting WordPress - porównanie planów polskich providerów
    
    Porównanie hostingów WordPress: LH.pl, CyberFolks, Zenbox, home.pl, Hostido - RAM, dysk, PHP wersje, OPcache, 1-click…
    
    ](/baza-wiedzy/hosting-wordpress-porownanie-planow/)
-   [WordPress Multisite - konfiguracja sieci stron krok po kroku
    
    Jak skonfigurować WordPress Multisite na hostingu? wp-config.php, .htaccess, subdomeny vs subdirektoria, Super Admin,…
    
    ](/baza-wiedzy/wordpress-multisite-konfiguracja/)
-   [Jak wybrać hosting?](/jaki-hosting-wybrac/)

Autor: [Redakcja HostGrade.pl](/autorzy/) Zespół redakcyjny · Aktualizacja: 9 kwietnia 2026

Artykuły HostGrade.pl przygotowuje i aktualizuje redakcja serwisu. Ceny startowe, ceny odnowienia i warunki planów sprawdzamy w cennikach i regulaminach dostawców, a potem liczymy całkowity koszt za 2 lata (cena startowa plus odnowienia). Zasady zbierania danych i liczenia kosztów opisujemy na stronie Metodologia. Linki partnerskie oznaczamy jako #reklama.

[O redakcji i metodologii →](/autorzy/)