Strona główna  /  Instalacja i migracja  /  Wp-config.php WordPress – jak edytować i do czego służy?

Otwarte na laptopie linie kodu PHP w edytorze, widoczne w przytulnym, wieczornym biurze domowym z kawą na biurku.

Wp-config.php WordPress – jak edytować i do czego służy?

Wp-config.php to główny plik konfiguracyjny WordPressa. Zawiera dane połączenia z bazą, klucze bezpieczeństwa oraz ustawienia wpływające na debugowanie, pamięć, aktualizacje i dostęp do plików. Znajduje się zwykle w katalogu głównym instalacji, obok folderów wp-admin, wp-content i wp-includes.

Czym jest plik wp-config.php?

WordPress odczytuje wp-config.php podczas uruchamiania strony. Na jego podstawie ustala, z jaką bazą danych ma się połączyć, jakiego używać prefiksu tabel oraz które funkcje środowiska są aktywne. W pliku znajdują się też klucze i sole bezpieczeństwa wykorzystywane przy obsłudze ciasteczek logowania.

Plik jest tworzony podczas instalacji WordPressa. W paczce instalacyjnej znajduje się natomiast wp-config-sample.php, który może posłużyć jako szablon do ręcznego przygotowania konfiguracji.

Najczęściej znajdziesz go przez FTP, SFTP, SSH albo menedżer plików w panelu hostingu, takim jak DirectAdmin. Jeżeli na serwerze działa kilka witryn, upewnij się, że otwierasz plik należący do właściwej instalacji.

Jak bezpiecznie edytować wp-config.php?

Nie zmieniaj pliku na produkcyjnej stronie bez kopii zapasowej. Jedna literówka, brak średnika lub niezamknięty apostrof mogą wywołać błąd krytyczny i zatrzymać działanie witryny.

Przed rozpoczęciem pracy sprawdź poniższe punkty:

  • Kopia pliku – pobierz aktualny wp-config.php na komputer i zachowaj jego niezmienioną wersję.
  • Kopia strony – upewnij się, że masz backup plików oraz bazy danych.
  • Dostęp do serwera – przygotuj dane FTP, SFTP lub SSH, a także dostęp do menedżera plików.
  • Edytor kodu – użyj narzędzia takiego jak VS Code lub Notepad++, a nie Microsoft Word ani innego procesora tekstu.
  • Jedna zmiana naraz – po zapisaniu sprawdź stronę i panel administracyjny, zanim wykonasz kolejną modyfikację.

Po edycji zachowaj format PHP. Wpisy w rodzaju define( 'NAZWA', 'wartość' ); muszą kończyć się średnikiem. Jeśli po zapisaniu strona przestanie działać, przywróć poprzednią wersję pliku. Gdy awaria utrzymuje się mimo przywrócenia kopii, potrzebna może być pomoc administratora serwera lub developera.

Konfiguracja bazy danych w wp-config.php

Najważniejsza sekcja pliku zawiera dane potrzebne do połączenia WordPressa z bazą MySQL lub kompatybilnym silnikiem bazodanowym. Te wartości przydają się między innymi podczas migracji na nowy hosting, zmiany hasła użytkownika bazy lub odtwarzania strony z kopii.

Stała Znaczenie Przykładowa wartość
DB_NAME Nazwa bazy używanej przez instalację WordPressa. 'nazwa_bazy'
DB_USER Nazwa użytkownika mającego dostęp do bazy. 'uzytkownik_bazy'
DB_PASSWORD Hasło użytkownika bazy danych. 'haslo_bazy'
DB_HOST Adres serwera bazy, czasem wraz z portem. 'localhost'
DB_CHARSET Zestaw znaków używany przez bazę. 'utf8mb4'

Przykładowy fragment może wyglądać tak:

define( 'DB_NAME', 'nazwa_bazy' );
define( 'DB_USER', 'uzytkownik_bazy' );
define( 'DB_PASSWORD', 'haslo_bazy' );
define( 'DB_HOST', 'localhost' );
define( 'DB_CHARSET', 'utf8mb4' );
define( 'DB_COLLATE', '' );

localhost jest częstą wartością, ale nie obowiązuje na każdym hostingu. Dostawca może wymagać osobnego adresu serwera, na przykład nazwy hosta bazy danych. Błędne dane powodują problemy z połączeniem, ale sama zmiana DB_PASSWORD w pliku nie zmienia hasła użytkownika w bazie. Najpierw trzeba zmienić je po stronie serwera, a następnie wpisać nową wartość w konfiguracji.

Najczęstsze modyfikacje wp-config.php

Poza połączeniem z bazą plik pozwala zmienić zachowanie WordPressa. Każdą z poniższych stałych dodawaj tylko wtedy, gdy wiesz, jaki problem rozwiązuje.

  • Limit pamięci PHP – może pomóc przy ciężkich wtyczkach, importach lub rozbudowanym panelu.
  • Ochrona panelu – wyłącza edycję plików motywów i wtyczek z poziomu kokpitu.
  • Wersjonowanie treści – ogranicza liczbę przechowywanych rewizji wpisów albo wyłącza je całkowicie.
  • Kosz multimediów – pozwala odzyskać przypadkowo usunięte pliki z biblioteki mediów.
  • Adres witryny – nadpisuje adres strony, co bywa pomocne po migracji lub zmianie domeny.

Limit pamięci można ustawić przykładowo tak:

define( 'WP_MEMORY_LIMIT', '256M' );
define( 'WP_MAX_MEMORY_LIMIT', '512M' );

Wartości zależą od limitów narzuconych przez hosting. Zwiększenie pamięci nie naprawi źle działającej wtyczki ani zapytań nadmiernie obciążających bazę.

Aby wyłączyć edytor plików w panelu administracyjnym, użyj:

define( 'DISALLOW_FILE_EDIT', true );

Bardziej restrykcyjne ustawienie blokuje również instalowanie i aktualizowanie motywów oraz wtyczek:

define( 'DISALLOW_FILE_MODS', true );

Do kontroli rewizji i kosza służą między innymi takie wpisy:

define( 'WP_POST_REVISIONS', 5 );
define( 'AUTOSAVE_INTERVAL', 90 );
define( 'MEDIA_TRASH', true );
define( 'EMPTY_TRASH_DAYS', 30 );

WP_HOME i WP_SITEURL mogą nadpisać adresy zapisane w bazie:

define( 'WP_HOME', 'https://example.com' );
define( 'WP_SITEURL', 'https://example.com' );

Nie dodawaj końcowego ukośnika do adresu. Przy zmianie domeny sprawdź również adresy zapisane w bazie i konfigurację przekierowań.

Jak używać trybu debugowania?

WP_DEBUG pomaga wykrywać problemy w motywach, wtyczkach i kodzie PHP. Włączenie debugowania na stronie produkcyjnej wymaga ostrożności, ponieważ wyświetlane komunikaty mogą ujawnić ścieżki plików i szczegóły konfiguracji.

Stała Wartość Efekt
WP_DEBUG true Włącza tryb diagnostyczny WordPressa.
WP_DEBUG_LOG true Zapisuje błędy do logu, zwykle w wp-content/debug.log.
WP_DEBUG_DISPLAY false Ukrywa komunikaty błędów przed odwiedzającymi.
WP_DEBUG_DISPLAY true Wyświetla komunikaty w odpowiedzi strony.

Do diagnozy na stronie, której błędy nie powinny być widoczne publicznie, użyj tymczasowo:

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
@ini_set( 'display_errors', 0 );

Po zakończeniu testów wyłącz debugowanie i usuń lub zabezpiecz log. Na produkcji zwykle pozostawia się:

define( 'WP_DEBUG', false );
define( 'WP_DEBUG_LOG', false );
define( 'WP_DEBUG_DISPLAY', false );

Jak dodatkowo zabezpieczyć plik?

wp-config.php zawiera hasło do bazy, dlatego nie należy publikować jego treści ani wysyłać jej w niezabezpieczonych zgłoszeniach. W systemach Linux administrator może ograniczyć uprawnienia pliku, na przykład do 400 lub 440. Konkretna wartość zależy od użytkownika, grupy i konfiguracji serwera, więc nie zmieniaj jej bez sprawdzenia, czy PHP nadal może odczytać plik.

WordPress potrafi odczytać konfigurację także wtedy, gdy plik znajduje się poziom wyżej niż katalog instalacji. To dodatkowa warstwa ochrony, ale przed przeniesieniem trzeba sprawdzić konfigurację hostingu i poprawność działania strony.

Nie zostawiaj na serwerze kopii nazwanych wp-config.php.bak, wp-config.php.old lub wp-config.php.txt. Mogą stać się dostępne do pobrania przez przeglądarkę i ujawnić dane bazy.

Najbezpieczniejsza zasada jest prosta: wykonaj kopię, zmieniaj jedną rzecz naraz, sprawdź składnię i po zapisie od razu przetestuj stronę. Przy migracji, błędach połączenia z bazą i konfiguracji produkcyjnego sklepu lepiej skorzystać z pomocy osoby, która ma doświadczenie w administracji WordPressem.

Redakcja wpinternals.pl

WordPressa znamy od kuchni – budujemy na nim strony, migrujemy serwisy i optymalizujemy ich wydajność. Piszemy o wtyczkach, motywach, hostingu i bezpieczeństwie tak, by poradzili sobie także początkujący. Dbamy o to, by Twoja strona była szybka, stabilna i bezpieczna.

Może Cię również zainteresować

Potrzebujesz więcej informacji?