Przeniesienie strony WordPress na nowy serwer może wydawać się skomplikowanym zadaniem, ale z odpowiednim przewodnikiem stanie się to prostsze, niż myślisz. Z WordPressem mam do czynienia praktycznie każdego dnia i średnio 2 razy w tygodniu robię kopię zapasową, przenosiny lub też stawiam projekt swojego klienta lokalnie i o dziwo dosyć często idzie napotkać na różne przeszkody, ale o wszystkim postaram się opowiedzieć w trakcie tego wpisu także, zapraszam do lektury. 🙂
1. Kopia zapasowa WordPress
Jeżeli chcemy przenieść stronę z jednego hostingu na drugi, to raczej oczywiste jest to, że musimy przygotować kopię zapasową swojej aktualnej witryny. Pamiętajmy, że WordPress tak naprawdę składa się z dwóch odrębnych bytów: File system (czyli po prostu pliki naszej strony wraz ze zdjęciami, zainstalowanymi pluginami, motywami itp.), oraz baza danych.
2. W jaki sposób utworzyć kopię zapasową naszej strony?
Kopię zapasową możemy wykonać na wiele różnych sposobów, które można podzielić na 2 odrębne kategorie.
- 1. Wersja dla osób technicznych: Łącząc się z serwerem via ftp / scp / rsync, aby pobrać pliki, a następnie wykonanie kopii zapasowej bazy danych.
- 2. Wersja uproszczona wykorzystująca gotowe narzędzia, czyli wtyczki do WordPressa, które za pomocą kilku kliknięć same wygenerują nam kompletną, kopię zapasową.
Tworzenie kopii zapasowej w taki sposób można to nazwać dziś „rzemieślniczy”, jest coraz mniej popularny, ponieważ wtyczki są po prostu wygodniejszym i szybszym sposobem na utworzenie kopii zapasowej. Istnieją sytuacje, w których musimy skorzystać ze sposobu nr 1, ale głównie dotyczą one sytuacji gdy mamy do czynienia z dosyć sporą instancją WordPressa.
O wtyczkach, które są przeze mnie polecane i co najważniejsze, przetestowane w bojach pisałem również w jednym z moich poprzednich wpisów gdzie pisałem o tym dlaczego warto utworzyć wersje stagingową strony WordPress
3. Tworzymy kopię zapasową za pomocą wtyczki Duplicator.
Wtyczka Duplicator to jedno z lepszych rozwiązań, ponieważ dosłownie na kilka kliknięć jest w stanie przygotować zrzut całego WordPresa wraz z bazą danych, ale też dodatkowo skrypt w późniejszym procesie instalacji zadba o to, aby automatycznie wykonać na bazie tzw: operację „search & replace”.
Mało tego ta wtyczka sprawdza wiele różnych czynników m.in. wersje PHP na serwerze domyślnym oraz docelowym, automatycznie wyłącza wtyczki, które w trakcie migracji mogą sprawić problemy. Mówiąc w skrócie: Robi robotę.
Sam proces jest dosyć prosty. Po zainstalowaniu wtyczki Duplicator klikamy jej nazwę w menu administratora, a następnie klikamy, aby utworzyć kopię zapasową. W pierwszej kolejności nasza witryna jest skanowana, a po jej zakończeniu możemy finalnie rozpocząć proces, budowania naszej paczki instalacyjnej klikając w przycisk „kompiluj”. Gdy paczka zostanie utworzona, otrzymamy stosowny komunikat. Pamiętajmy, aby kliknąć „Pobierz oba pliki”. Całość można podejrzeć na filmie poniżej.
Pierwszy pobrany plik to installer.php a drugi to paczka z całym naszym systemem. Jest ona spakowana do formatu .zip, aby po prostu mniej zajmowała. Oba pliki są wymagane, aby zainstalować system.
Gratulacje! Właśnie utworzyłeś kompletną kopię zapasową całej swojej strony wraz z bazą danych. Mało tego Duplicator przygotował specjalny installer, za pomocą którego instalacja WordPressa na nowym serwerze będzie banalnie prosta.
4. Tworzymy bazę danych na nowym serwerze
Skoro mamy utworzoną kopię zapasową to najwyższy czas wrzucić ją na nowy serwer. Jak pewnie pamiętasz, na samym początku zaznaczyłem, że system WordPress składa się z dwóch składowych: Systemu plików oraz bazy danych.
Mamy oczywiście system plików (w naszym instalatorze spakowanym w .zip), a także bazę danych, która znajduje się dokładnie w tym samym miejscu.
Jednakże baza nie działa w taki sposób, że skopiujesz ją jak plik i będzie to działać. Musimy na docelowym hostingu utworzyć nową, pustą bazę danych, do której zaimportujemy dane z kopii. Można to porównać np.: do pustego pliku Excela, którego musisz utworzyć, aby do niego zaimportować przygotowane wcześniej dane.
W jaki sposób utworzyć bazę danych? Zazwyczaj dokonujemy tego w panelu serwera i tutaj w zależności od wyboru firmy może być to w różnych miejscach, podrzucam tutaj kilka linków dotyczących tworzenia bazy danych dla serwerów w:
- Cyberfolks: https://cyberfolks.pl/pomoc/jak-utworzyc-nowa-baze-danych-mysql
- lh.pl: https://www.lh.pl/pomoc/doc/tworzenie-nowej-bazy-danych-mysql
- mydevil.net: https://wiki.mydevil.net/MySQL
- webd.pl: https://webd.pl/pomoc/w-jaki-sposob-moge-utworzyc-baze-danych/
- home.pl: https://pomoc.home.pl/baza-wiedzy/edycja-lub-nowa-baza-danych-na-serwerze-unix
- zenbox.pl: https://zenbox.pl/pomoc/artykul/jak-utworzyc-nowa-baze-danych/
- seohost.pl: https://seohost.pl/blog/jak-stworzyc-baze-danych-na-hostingu
- hostido.pl: https://hostido.pl/baza-wiedzy/wpis/18/w-jaki-sposob-dodac-baze-danych
- dhosting.pl: https://dhosting.pl/pomoc/baza-wiedzy/tworzenie-nowej-bazy-danych/
Gdy już utworzymy bazę danych wraz z użytkownikiem, to można powiedzieć, że mamy komplet do wrzucenia nowej strony na serwer.
Najlepsze w tym wszystkim jest to, ze w kwestii bazy danych wystarczy utworzyć… pustą bazę i to wszystko z naszej strony.
W takim klasycznym scenariuszu musielibyśmy bazę z naszego WordPress a zaimportować oraz podmienić linki a dzięki temu, że korzystamy z Duplicatora cały ten proces będzie dział się automatycznie.
5. Przesyłamy kopię zapasową na docelowy serwer.
Skoro mamy przygotowaną na naszym serwerze pustą bazę danych to najwyższy czas wrzucić wcześniej przygotowane pliki (installer.php oraz archiwum z rozszerzeniem .zip ) do katalogu, w którym docelowo powinna być zainstalowana nasza strona.
Odpalam sobie program total commander, łącze się z moim serwerem gdzie tworze osobny katalog i wrzucam tam wcześniej wypakowane pliki.

Protokół FTP nie należy do najlepszych rozwiązań w przypadku dużych instancji WordPress i nie jest najlepszy do przesyłania dużej ilości małych plików, ale tutaj przesyłamy tylko 2 pliki.
Dodając do tego fakt, że dzisiejsze łącza internetowe są niezwykle szybkie, możemy ze spokojem użyć wcześniej wspomnianych programów i zrobić zrzut via FTP.
Można też skorzystać z file managera, który jest dostępny praktycznie na każdym hostingu.
6. Instalacja WordPress na nowym serwerze
Skoro mamy na docelowym serwerze wymagane pliki (archiwum .zip oraz plik installer.exe) oraz mamy utworzoną pustą bazę danych, to pozostaje nam dopełnić formalności.
Wpisujemy w adresie URL adres pliku installer.php np.:
mojadomena.com/installer.php
zakładając, że pliki zostały wypakowane dokładnie w to miejsce, gdzie kieruje domena np.: do katalogu domeny i folderu public_html. Ja na szybko utworzyłem sobie w mojej domenie katalog o nazwie nowa_strona_bedzie_tutaj więc wpisuje:
j-filipiak.pl/nowa_strona_bedzie_tutaj/installer.php
w tym momencie jak widać, mam dostęp do strony instalacyjnej:

Praktycznie jedna z ostatnich akcji, która została po naszej stronie to uzupełnienie zakładki Setup, a w niej mamy po prostu do wpisania dane, do połączenia się z tą pustą bazą danych, którą utworzyliśmy.
Podczas procesu instalacji zostanie tam wrzucona baza danych, która będzie już przygotowana pod nową domenę! Nie musimy robić żadnych SQL ani operacji typu serach & replace. Po prostu podajemy dostępy do bazy danych:
Host: zazwyczaj localhost, lub host podany przez hostingodawce.
Database: nazwa bazy danych
User: nazwa użytkownika z dostępem do bazy danych
Password: hasło użytkownika bazy danych
Następnie klikamy na „Validate” i jeżeli podaliśmy poprawne dane, to zostaniemy przekierowani do kolejnego etapu, w którym wystarczy kliknąć checkboxa ze zgodą oraz przycisk „Next”

Powinien wyskoczyć jeszcze jeden popup z podsumowaniem operacji, które zostaną wykonane:

Gdy już wszystko mamy klikamy dalej i przechodzimy do samego procesu instalacji. Spójrz na screeny, które zrobiłem w trakcie instalacji.




Gratulacje! Właśnie udało ci się utworzyć kompletną kopię zapasową całego systemu oraz przerzucić wszystko na nowy serwer!
Gdybyś miał/miała jakieś pytania to zapraszam do sekcji komentarzy, chętnie pomogę oraz rozjaśnie wszelkie wątpliwości.Jestem także dostępny pod @
W najbliższym czasie na blogu powstaną jeszcze wpisy, w których pokaże inne metody tworzenia kopii zapasowych / migracji całych instancji WordPress w tym także pokażę sytuację, w których trzeba jednak skorzystać z scp / rsync zwłaszcza gdy mamy do czynienia z ogromnymi projektami. A to dopiero początek moich zapowiedzi. Mam nadzieje, że niektóre wpisy otrzymają swoje odpowiedniki w formacie Video także gorąco polecam odwiedzanie mojego bloga.
Czy mogę stracić dane podczas przenoszenia strony WordPress?
W przypadku tej wtyczki jest to mało prawdopodobne. Duplicator dosyć dobrze radzi sobie z kopią zapasową bazy danych oraz posiada mechanizmy zabezpieczające.
Dlaczego muszę tworzyć nową, pustą bazę danych? Nie mogę po prostu skopiować starej?
Duplicator potrzebuje takiego pustego pudełka, do którego wrzuci sobie wszystkie dane. Posiada on również mechanizm, dzięki któremu jest w stanie nadpisać istniejąca bazę ale skoro robimy migrację na nowy serwer ,to najlepszym rozwiązaniem jest utworzenie czystej bazy i danie Duplicatorowi wolnej ręki.
Co się stanie z moimi wpisami i komentarzami po przeniesieniu strony?
Wszystkie wpisy oraz komentarze zostaną przeniesione ponieważ istnieją one w bazie danych
Czy po migracji muszę ponownie instalować wszystkie wtyczki?
Nie. Informacja o aktywnych wtyczkach jest również zapisana w bazie danych. Robiąc kopie zapasową, zrobiliśmy ją kompletną, wraz z obrazami, pluginami i motywami. Pamiętaj, że duplicator jest o tyle madrym narzędziem, że wykona kilka operacji za nas min. może on wyłączyć wtyczkę typu WordFence lub wtyczki cachujące dlatego może się zdarzyć sytuacja, że będzie trzeba takie wtyczki właczyć a także wyczyścić cache lub ponownie skonfigurować np: wspomniany WordFence.
Po migracji sprawdź zakładkę z wtyczkami aby się upewnić a także obowiązkowo wyczyść cache oraz zapisz strukture permalinków w ustawieniach WordPress
Jak długo trwa cały proces przenoszenia strony?
Zazwyczaj jest to kilka minut
Czy potrzebuję specjalnych umiejętności technicznych do przeniesienia strony?
Jeżeli mowa o klasycznym przenoszeniu WordPress zgodnie z WP Codex to takie przenoszenie wymaga troszkę wiedzy technicznej. Na szczęście przenoszenie za pomocą wtyczek odblokowało tą umiejętność również dla osób mniej technicznych
Czy Duplicator obsługuje witryny z Custom Post Types?
Tak
Jak długo należy przechowywać kopię zapasową po migracji?
Kwestia kopii zapasowych to temat rzeka.Kopie robimy często i trzymamy je w niezależnych lokalizacjach
Czy mogę przenieść stronę na hosting z inną wersją PHP?
Takie zmiany najlepiej sprawdzać lokalnie.
Komentarze
Dodaj komentarz