
🚀 Lokalna instalacja WordPress na Ubuntu przez LAMP: przewodnik krok po kroku 2026
Сerwis na WordPress nie zaczyna się od zakupu hostingu. Deweloperzy najpierw zbierają i testują wszystko lokalnie: bez domeny, bez ryzyka uszkodzenia działającego projektu i bez miesięcznej opłaty za serwer.
Jeśli ma Pan Ubuntu, najprościej uruchomić lokalny WordPress za pomocą stosu LAMP. Cztery komponenty: Linux (czyli samo Ubuntu), Apache (serwer WWW), MySQL (baza danych) i PHP (język WordPressa). Wszystko jest bezpłatne, open source i instaluje się ze standardowych repozytoriów.
Poniżej znajduje się instrukcja krok po kroku dla Ubuntu 24.04 LTS i 26.04 LTS (Resolute Raccoon, wydany w kwietniu 2026). Proces jest identyczny dla każdej edycji: standardowe Ubuntu, Lubuntu, Kubuntu, Xubuntu. W 20 minut otrzyma Pan w pełni działający lokalny WordPress, może Pan testować wtyczki, próbować motywów, psuć i naprawiać bez konsekwencji.
💡 Szybki przegląd:
- Zainstaluj Apache, MySQL i PHP jedną komendą przez terminal
- Skonfiguruj wirtualny host dla witryny
- Pobierz WordPress i utwórz bazę danych
- Przejdź pięciominutową instalację w przeglądarce
- Po ostatnim kroku otrzymaj działającą witrynę na
http://localhost
Czym jest LAMP i do czego służy lokalnie
LAMP to Linux, Apache, MySQL i PHP. Linux jest już zainstalowany, to samo Ubuntu. Pozostaje dodać trzy komponenty.
Apache przyjmuje żądania HTTP i zwraca strony. MySQL przechowuje wpisy, ustawienia i dane logowania użytkowników WordPressa. PHP wykonuje kod motywów i wtyczek po stronie serwera. Alternatywy takie jak NGINX czy LiteSpeed są wydajniejsze przy dużym obciążeniu, ale trudniejsze w konfiguracji. Do lokalnego developmentu Apache jest tym, czego trzeba: minimum konfiguracji i pełna kompatybilność z .htaccess.
Lokalna instalacja daje trzy konkretne korzyści. Po pierwsze: eksperymentuje Pan z wtyczkami i motywami bez ryzyka uszkodzenia publicznej witryny. Po drugie: strony otwierają się natychmiast, nie ma opóźnień sieciowych. Po trzecie: wyszukiwarki nie widzą domeny testowej, nawet jeśli zapomni Pan zdjąć znacznik „zabroń indeksowania".
Jeśli wygodniej jest Panu oglądać niż czytać, oto pełny instruktaż wideo z instalacji całego stosu:
Krok 1: Aktualizacja systemu i instalacja Apache
Przed rozpoczęciem proszę zaktualizować listy pakietów. Proszę otworzyć terminal i wykonać:
1 sudo apt update && sudo apt upgrade -y
Teraz proszę zainstalować Apache. Pakiet nazywa się apache2:
1 sudo apt install apache2 -y
Po zakończeniu Apache uruchomi się automatycznie. Proszę sprawdzić: otworzyć przeglądarkę i przejść pod adres http://localhost. Jeśli zobaczy Pan stronę „Apache2 Ubuntu Default Page", serwer WWW działa.
Dwie przydatne komendy do zarządzania Apache:
1 sudo systemctl status apache2 # проверить состояние 2 sudo systemctl restart apache2 # перезапустить после изменений конфигурации
Krok 2: Instalacja MySQL
Instalujemy serwer baz danych. W Ubuntu 24.04 repozytoria zawierają MySQL 8.0, a w Ubuntu 26.04 MySQL 8.4 LTS (pierwsze wydanie LTS MySQL):
1 sudo apt install mysql-server -y
W trakcie instalacji system poprosi o ustawienie hasła dla użytkownika root MySQL.

Proszę wprowadzić hasło, które Pan zapamięta. Do lokalnego developmentu wystarczy coś prostego, na przykład qwerty. Na serwerze produkcyjnym należy oczywiście użyć silnego hasła z cyframi i znakami specjalnymi.
Po instalacji proszę aktywować bazę danych:
1 sudo mysql_install_db
Jeśli hasło root zostanie później zapomniane, proszę nie panikować. Należy zatrzymać MySQL, uruchomić go ponownie z flagą --skip-grant-tables i zresetować hasło. Konkretne kroki znajdują się w oficjalnej dokumentacji MySQL (procedura jest taka sama dla wersji 8.0 i 8.4).
Krok 3: Instalacja PHP i wymaganych modułów
WordPress wymaga PHP i kilku rozszerzeń. Zestaw zależy od wersji Ubuntu:
Ubuntu 24.04 (PHP 8.3):
1 sudo apt install php8.3 libapache2-mod-php8.3 php8.3-mysql php8.3-gd php8.3-xml php8.3-mbstring php8.3-curl php8.3-zip php8.3-intl -y
Ubuntu 26.04 (PHP 8.4):
1 sudo apt install php8.4 libapache2-mod-php8.4 php8.4-mysql php8.4-gd php8.4-xml php8.4-mbstring php8.4-curl php8.4-zip php8.4-intl -y
Do czego służy każde rozszerzenie:
php-mysql, komunikacja z bazą danychphp-gd, przetwarzanie obrazów i tworzenie miniaturphp-xml, odczyt XML, potrzebny do importu i eksportu treściphp-curl, żądania HTTP z WordPressa do zewnętrznych APIphp-mbstringiphp-intl, poprawna obsługa cyrylicy i wielojęzycznościphp-zip, rozpakowywanie archiwów wtyczek i motywów
Teraz należy skonfigurować Apache tak, aby serwował indeksowe pliki PHP. Proszę otworzyć konfigurację:
1 sudo nano /etc/apache2/mods-enabled/dir.conf
Proszę doprowadzić zawartość do następującej postaci, linia index.php musi być pierwsza:
1 <IfModule mod_dir.c> 2 DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm 3 </IfModule>
Proszę zapisać (Ctrl+O) i wyjść z nano (Ctrl+X).
Sprawdźmy, czy PHP działa. Proszę utworzyć plik testowy:
1 sudo nano /var/www/html/info.php
Proszę wkleić do niego:
1 <?php 2 phpinfo(); 3 ?>
Proszę zrestartować Apache:
1 sudo systemctl restart apache2
Proszę otworzyć w przeglądarce http://localhost/info.php. Powinna się pojawić fioletowa tabela z informacjami o wersji PHP i załadowanych modułach.

Po upewnieniu się, że PHP działa, proszę usunąć plik testowy, ujawnia on szczegóły serwera i nie powinien pozostawać na dysku:
1 sudo rm /var/www/html/info.php
Krok 4: Pobranie i rozpakowanie WordPressa
Przejdź do katalogu głównego Apache:
1 cd /var/www/html
Pobierz najnowszą wersję WordPressa:
1 wget https://wordpress.org/latest.tar.gz 2 tar -xzf latest.tar.gz 3 rm latest.tar.gz
WordPress znajduje się teraz w /var/www/html/wordpress/ i jest dostępny pod adresem http://localhost/wordpress.
Jeśli chce Pan, aby strona otwierała się od razu pod http://localhost bez /wordpress, proszę przenieść zawartość katalogu poziom wyżej lub skonfigurować wirtualnego hosta. Do lokalnego developmentu wariant z /wordpress jest prostszy i w niczym nie przeszkadza.
Krok 5: Utworzenie bazy danych MySQL dla WordPressa
WordPress potrzebuje osobnej bazy danych. Proszę zalogować się do konsoli MySQL jako użytkownik root:
1 sudo mysql -u root -p
Proszę wprowadzić hasło root ustawione w Kroku 2. Pojawi się znak zachęty mysql>. Proszę utworzyć bazę danych, nazwijmy ją wpubuntu:
1 CREATE DATABASE wpubuntu;
Proszę zastosować zmiany:
1 FLUSH PRIVILEGES;
I wyjść z MySQL:
1 EXIT;
Baza jest gotowa. Kwestia bezpieczeństwa: na serwerze produkcyjnym utworzyłby Pan osobnego użytkownika MySQL z hasłem i nadał mu uprawnienia tylko do tej bazy. Do lokalnego developmentu dostęp root jest akceptowalny, nikt z zewnątrz nie połączy się z portem 3306.
Krok 6: Końcowa konfiguracja WordPressa w przeglądarce
Proszę otworzyć przeglądarkę i przejść pod adres http://localhost/wordpress.
WordPress wykryje, że plik wp-config.php nie został jeszcze utworzony i zaproponuje jego utworzenie.

Proszę kliknąć „Utwórz plik konfiguracyjny", a następnie „Dalej!" w kolejnym kroku. Proszę wypełnić dane:
1 Имя базы данных: wpubuntu 2 Имя пользователя: root 3 Пароль: qwerty (или тот, что задали на Шаге 2) 4 Сервер базы данных: localhost 5 Префикс таблиц: wp_
Proszę kliknąć „Wyślij". Jeśli wszystkie kroki zostały wykonane poprawnie, zobaczy Pan komunikat o pomyślnym połączeniu z bazą danych.

Następnie klasyczna „pięciominutowa instalacja": proszę podać nazwę strony, nazwę użytkownika i hasło do logowania do panelu administracyjnego. Proszę odznaczyć opcję „Poproś wyszukiwarki o nieindeksowanie witryny", na lokalnej maszynie nie ma to sensu.
Proszę kliknąć „Zainstaluj WordPressa", a po kilku sekundach zobaczy Pan ekran logowania.

Proszę zalogować się przy użyciu właśnie utworzonych danych dostępowych. WordPress na Ubuntu działa lokalnie.
Możliwe błędy i ich rozwiązywanie
Przez lata lokalnych instalacji zebraliśmy pięć najczęstszych problemów i sposoby ich naprawienia.
Błąd „Error establishing a database connection". Proszę sprawdzić, czy MySQL jest uruchomiony: sudo systemctl status mysql. Jeśli nie, sudo systemctl start mysql. Jeśli jest uruchomiony, ale błąd nadal występuje, proszę ponownie zweryfikować nazwę bazy danych, użytkownika i hasło z kroków 2 i 5.
Biały ekran podczas otwierania http://localhost/wordpress. Najprawdopodobniej brakuje wymaganego modułu PHP. Proszę uruchomić php -m i porównać z listą z Kroku 3. Brakujące moduły należy zainstalować przez sudo apt install.
Apache zwraca „403 Forbidden". Proszę otworzyć /etc/apache2/apache2.conf, znaleźć blok <Directory /var/www/> i upewnić się, że obecna jest dyrektywa Require all granted, a nie Require all denied. Po poprawkach: sudo systemctl restart apache2.
WordPress prosi o dostęp FTP podczas instalacji wtyczki. To problem z uprawnieniami do folderów. Proszę wykonać:
1 sudo chown -R www-data:www-data /var/www/html/wordpress 2 sudo chmod -R 755 /var/www/html/wordpress
Teraz WordPress będzie mógł zapisywać pliki bezpośrednio, bez FTP.
„Pięciominutowa instalacja" przebiegła pomyślnie, ale witryna pokazuje 404 na wszystkich stronach. Najprawdopodobniej moduł mod_rewrite nie jest włączony. Proszę go włączyć:
1 sudo a2enmod rewrite 2 sudo systemctl restart apache2
Następnie proszę wejść do panelu administracyjnego WordPress, Ustawienia → Bezpośrednie odnośniki i po prostu kliknąć „Zapisz". To zaktualizuje strukturę .htaccess.
A jeśli na serwer produkcyjny
LAMP świetnie działa lokalnie, ale dla publicznej witryny zalecamy inne podejście. Na serwerze produkcyjnym NGINX z PHP-FPM daje lepszą wydajność pod obciążeniem, a hosting zarządzany (Cloudways, Rocket.net) zdejmuje z Pana/Pani zadania związane z aktualizacją pakietów i konfiguracją bezpieczeństwa.
Jeśli pracuje Pan/Pani na Windows lub macOS, mamy osobne poradniki: WordPress na Windows przez WAMP i WordPress na macOS przez MAMP. Dla ogólnego zrozumienia środowisk lokalnych proszę przeczytać porównanie WAMP, MAMP i XAMPP.
A tymczasem na wersji lokalnej proszę śmiało eksperymentować: instalować dowolne wtyczki, testować różne motywy, psuć i naprawiać. Doświadczenie zdobyte na lokalnej witrynie zwraca się przy pierwszym incydencie na produkcyjnej.
⁉️🤔 Często zadawane pytania
Czy można zainstalować WordPress bez LAMP, po prostu pobierając archiwum ZIP?
Nie. WordPress nie jest aplikacją desktopową. Potrzebuje serwera WWW (Apache lub NGINX) do obsługi żądań HTTP, PHP do wykonywania kodu oraz MySQL do przechowywania danych. Bez tych trzech komponentów WordPress nie uruchomi się ani lokalnie, ani na hostingu.
Czy koniecznie trzeba instalować MySQL? Czy można MariaDB?
Tak, MariaDB działa dokładnie tak samo. To fork MySQL, w pełni kompatybilny na poziomie poleceń i protokołu. W Ubuntu MariaDB instaluje się pakietem
mariadb-server. Wszystkie polecenia z poradnika, w tymCREATE DATABASE,FLUSH PRIVILEGESimysql -u root -p, działają bez zmian.
Ile czasu zajmuje cała instalacja?
Na współczesnym komputerze z SSD, 15-20 minut, wliczając pobieranie pakietów. Główny czas zajmuje wpisywanie poleceń, a nie samo ich wykonywanie. Z doświadczeniem zmieści się Pan/Pani w 10 minutach.
Co robić po instalacji: które wtyczki zainstalować jako pierwsze?
Trzy wtyczki, które instalujemy na każdej nowej witrynie: UpdraftPlus (darmowe kopie zapasowe w chmurze), Rank Math SEO (indeksacja w wyszukiwarkach) i Wordfence Security (podstawowa zapora sieciowa i ochrona przed włamaniem). Wszystkie trzy mają pełnowartościowe darmowe wersje.
Jak usunąć lokalny WordPress i zacząć od nowa?
Dwa polecenia:
sudo rm -rf /var/www/html/wordpress(usuwa pliki) imysql -u root -p -e "DROP DATABASE wpubuntu;"(usuwa bazę). Po tym można przejść kroki 4-6 od nowa, czysta instalacja jest gotowa w 5 minut.
Czy można później przenieść lokalną witrynę na hosting?
Tak, to standardowa ścieżka rozwoju. Wtyczki All-in-One WP Migration lub Duplicator pakują witrynę w jeden plik, który wdraża się na hostingu przez interfejs WWW. Proszę zwrócić uwagę na dwie kwestie: trzeba zastąpić wszystkie wystąpienia
localhostrzeczywistą domeną w bazie danych, a uprawnienia do plików na hostingu są zwykle bardziej restrykcyjne niż lokalnie.
WordPress lokalnie w 20 minut: co dalej
WordPress na Ubuntu przez LAMP to nie „jeden ze sposobów", lecz standard lokalnego rozwoju dla projektów PHP. Otrzymuje Pan/Pani środowisko identyczne z serwerem produkcyjnym, bez kosztów hostingu i bez ryzyka dla publicznej witryny.
Opanował Pan/Pani lokalną instalację, proszę iść dalej. Proszę skonfigurować WP_DEBUG w wp-config.php, wdrożyć system kontroli wersji dla motywu, uruchomić testową multisieć. Fundament już jest.
Proszę spróbować teraz: otworzyć terminal i wykonać pierwsze polecenie z Kroku 1. Za 20 minut będzie miał Pan/Pani działającą lokalną witrynę. Coś poszło nie tak, proszę pisać w komentarzach, pomożemy znaleźć przyczynę.



