Migracja strony WordPress na nowy serwer -praktyczny przewodnik

Jak przenieść WordPress na nowy serwer bez obawy o utrate danych

migracja-wordpres-na-nowy-serwer-przewodniik

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:

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.

total commander przesylam pliki WordPressa
Total commander to jeden z programów za pomocą którego można wygodnie przesłać pliki protokołem FTP. Drugim z popularnych rozwiązań jest również program FileZilla.

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”

zaznaczamy checkboxa oraz klikamy next po poprawnej validacji

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

wordpress duplicator to jest ostatni ekran w którym widac popup pokazujący tzw: Install Confirmation
Zwróć uwagę na to, co jest zaznaczone na czerwono pod hasłem data: „No existing tables will be overwritten in the database” – to jest komunikat bardziej niż wskazany ponieważ potwierdza, że żadna tabela w istniejącej bazie danych nie zostnie nadpisana co jest logiczne ponieważ baza którą utworzyliśmy na hostingu jest aktualnie pusta. Gdyby widniała informacja o tym, że pewne tabele zostaną nadpisane to oznacza to, że podałeś dane do już istniejącej bazy danych

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

Pierwszy etap to wypakowywanie archiwum.. Widziałem już tutoriale na YT w których ktoś, zupełnie niepotrzebnie wrzucał zawartość archiwum na serwer zamiast .zip co jest niestety ale oznaką braku elementarnej wiedzy. Przecież parser PHP bardzo dobrze radzi sobie z archiwami .zip
Ten etap jest świetny ponieważ tutaj ma miejsce największe udogodnienie dla osób mniej technicznych. Wtyczka w miejsce utworzonej pustej bazy danych importuje wszystkie dane z kopii zapasowej. Ale to nie wszystko! Dodatkowo wtyczka wykonuje operację search & replace na bazie danych min. podmieniająć chociażby takie wartości jak chociażby siteurl
Kolejny etap to testy wykonywane przez installer.
Strona zainstalowana! jednakże jak pokazuje czerwony komunikat należy się zalogować po to aby usunąć wczesniej wrzucone pliki z archiwum oraz installerem z serwera – nie są one już potrzebne

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
Jesteś zainteresowany współpracą? Porozmawiajmy o Twoim projekcie.

Skontaktuj się ze mną i uzyskajwycenę w 24 godziny

Preferencje cookies