hobby informatyka

Jak przenieść stronę WordPress na inny hosting?

Może zdarzyć się, że koszty Twojego hostingodawcy przerosną Twoją kieszeń i przyjdzie czas się wynosić szukając korzystniejszej oferty. A może hosting jest za wolny i szukacie czegoś o większej przepustowości do swojego sklepu internetowego?

W tym przypadku trzeba przepiąć adresy DNS domeny oraz przenieść pliki na inny serwer. W przypadku małej strony w PHP jest to banalnie proste. Kopiujesz i przenosisz pliki, przepinasz DNS, czekasz ile trzeba i wszystko gotowe. W przypadku przeniesienia strony internetowej z bazą danych, jak np. strona WordPress nie jest to już takie proste. Ale spokojnie, przejdziemy przez to krok po kroku.

Spis treści:

  1. Jak przenieść WordPress na inny hosting?
  2. Przeniesienie strony WordPress – problemy
  3. Jak przenieść stronę na inny hosting?
  4. Wyeksportuj bazę danych MySQL
  5. Skopiuj pliki z serwera
  6. Dodaj domenę do serwera
  7. Umieść pliki na serwerze
  8. Zaktualizuj plik wp-config.php
  9. Zmień DNSy
  10. Podsumowanie

Jak przenieść WordPress na inny hosting?

Przy przenosinach WordPress na inny serwer musimy poradzić sobie z plikami strony internetowej (skopiowanie ich z poprzedniego serwera i eksport na nowy), co zajmuje sporo czasu, ale nie sprawia wielu problemów. Przeniesienie bazy danych MySQL jest już bardziej problematyczne. Właśnie dlatego przekierowanie domeny na inny serwer może być uważane za skomplikowane.

Przeniesienie strony WordPress – problemy

Przeniesienie strony WordPress może wiązać się z potencjalnymi problemami. Największy problem może pojawić się w związku z przeniesieniem danych, szczególnie bazy danych, aby serwer poprawnie je odbierał.

Podczas przenoszenia mogą wystąpić takie problemy jak:

  • utrata danych i plików Twojej strony, brak obrazków,
  • chwilowe wyłączenie Twojej strony/bloga. W przypadku sklepu internetowego może się to wiązać z utratą potencjalnych klientów, stratami finansowymi i wizerunkowymi marki,
  • utrata pozycji strony w Google (w przypadku dłuższego niedziałania strony).

Przykładem może być komunikat Apache is functioning normally pojawiający się w oknie przeglądarki zamiast Waszej strony internetowej:

Komunikat oznacza, że domena nie została poprawnie wpięta w panel serwera. Serwer ma problem ze znalezieniem plików domeny. W tym wypadku upewnij się, czy poprawnie umieściłeś pliki na serwerze. Jeśli tak, spróbuj sprawdzić swoją domenę w incognito. Często zdarza się, że domena w podglądzie w incognito wygląda poprawnie, a widok w przeglądarce nie jest prawidłowy ze względu na utrzymywaną lokalnie pamięć o stronie.

Przeniesienie strony WordPress na inny hosting

Na wszelki wypadek, przed rozpoczęciem migracji strony internetowej na inny serwer, zróbcie jej kopię zapasową. Jeśli nie wiecie jak, przeczytajcie wpis na temat kopii zapasowych.

Jak przenieść stronę na inny hosting?

  1. Wyeksportuj bazę danych MySQL
  2. Skopiuj pliki z serwera
  3. Zaktualizuj plik wp-config.php
  4. Zmień DNSy

Wyeksportuj bazę danych MySQL

Możecie wyeksportować bazę MySQL przez phpMyAdmin. Aby przeprowadzić eksport bazy danych, zalogujcie sie do phpMyAdmin z panelu administracyjnego serwera np. cPanelu.

Przejdźcie do sekcji Bazy danych.

W sekcji bazy danych macie cztery sekcje do wyboru:

  1. phpMyAdmin – tu zalogujecie się do phpMyAdmin
  2. Bazy danych MySQL – tu utworzycie nową bazę plików, zmodyfikujecie bazy danych i przejrzycie istniejące, dodacie użytkownika do baz danych i przejrzycie istniejących
  3. Kreator baz danych MySQL – tu stworzycie nową bazę plików krok po kroku
  4. Zdalna baza danych MySQL – tu zarządzacie zdalną bazą danych

Nas interesuje phpMyAdmin, do tworzenia baz danych przejdziemy w innym poradniku.

Tak wygląda wygląd panelu phpMyAdmin

Po lewej stronie ekranu widzicie listę baz danych. Kliknijcie w bazę danych, którą chcecie wyeksportować.

Pokazuje się widok plików znajdujących się w konkretnej bazie danych. Przechodzimy do sekcji Eksport.

W tej sekcji macie możliwość wyboru metody eksportu danych:

  • Szybko – tu wyświetlane są tylko minimalne opcje (ta opcja pozwala wyeksportować pełną zawartość bazy danych MySQL za pomocą standardowych ustawień)
  • Dostosuj – tu wyświetlane są wszystkie możliwe opcje (ta opcja pozwala zmienić szczegółowe właściwości dotyczące eksportu bazy danych np. wybrać eksport jednego zakresu).

Możemy wybrać również format, w jakim chcemy wyeksportować dane. Nie musi być to SQL, a może być np.:

  • CodeGen,
  • CSV,
  • CSV for MS Exel,
  • JSON,
  • LaTeX,
  • MediaWiki Table,
  • Microsoft Word 2020,
  • OpenDocument Spreadsheet,
  • OpenDocoment,
  • PDF,
  • PHP array,
  • Texy! text,
  • XML,
  • YAML.

Dla przykładu posłużymy się szybkim eksportem bazy danych. Zostajemy przy SQL, klikamy Szybko i Wykonaj.

Po chwili plik SQL jest już na komputerze.

Skopiuj pliki z serwera

Przechodzimy do kopiowania plików z serwera. Zalogujcie się do konta FTP na starym serwerze. Ja posłużę się do tego Fillezillą.

Skopiujcie pliki strony internetowej z serwera. Wystarczy przeciągnąć pliki, aby przenieść je do innego miejsca, np. do folderu na pulpit. Kopiowanie plików z serwera FTP może chwilę potrwać, szczególnie jeśli strona ma dużo zasobów. W przypadku mojej strony internetowej jest to ponad 22000 plików, a transfer trwał jakieś pół godziny.

Zaloguj się na drugi serwer. W panelu administratora dodaj domenę, którą chcesz przenieść na inny serwer i dodaj pobrane pliki strony internetowej do serwera FTP.

Dodaj domenę do serwera

Dla przykładu zaloguję się na serwer Netmark, którego panel już znamy. Logujemy się do cPanelu i przechodzimy do sekcji domeny. W Netmarku ważne, aby dodawać domeny podpięte, a nie zwykłe domeny. Domeny zapisują się w folderze głównym i mogą nadpisać inne domeny.

Możemy również przejść do sekcji domeny i zmienić ścieżkę zapisy przy tworzeniu domeny z /public_html na np. /nazwa-domeny.pl. W tym celu przechodzimy do sekcji domeny > zamontuj nową domenę.

W sekcji domena wpisujemy nazwę domeny. Koniecznie odznaczamy „podepnij domenę do katalogu (home/biletyko/public_html) kieruje tam Twoja domena główna „domena.pl„, a poniżej wpisujemy ścieżkę katalogu, do którego zostanie podpięta domena. Dalej klikamy dodaj.

Domena została poprawie utworzona.

Umieść pliki na serwerze

Umieść pliki strony WordPress na nowy serwerze. W tym celu skopiuj wcześniej wygenerowane pliki i umieść je w folderze np. domena.pl, na nowym serwerze.

Dodawanie plików zajmie mniej więcej tyle samo, co ich pobieranie, więc w tym przypadku również warto uzbroić się w cierpliwość i kubek dobrej kawy.

Po 0,5-1h wszystkie pliki zostały skopiowane, przechodzimy do podmiany pliku SQL.

W tym celu logujemy się do cPanelu i przechodzimy do sekcji Bazy danych > Bazy danych MySQL

Tworzymy nową bazę danych dla domeny. W sekcji Utwórz nową bazę danych wpisujemy nazwę nowej bazy danych i klikamy utwórz bazę danych.

Należy również stworzyć użytkownika bazy danych MySQL, w tym celu przechodzimy do sekcji Użytkownicy bazy danych MySQL. Dodajemy nazwę użytkownika, hasło praz klikamy utwórz użytkownika.

Należy jeszcze dodać użytkownika do bazy danych. Przechodzimy do sekcji Dodaj użytkownika do bazy danych, wpisujemy utworzonego użytkownika oraz utworzoną bazę danych i klikamy dodaj.

Import pliku SQL

Przechodzimy do cPanelu do sekcji Bazy danych > phpMyAdmin

Wybieramy domenę, dla której chcemy wgrać plik SQL. Tym razem klikamy import bazy danych.

Przechodzimy do importowania do bieżącego serwera. Wybieramy plik SQL, który pobraliśmy ze starego serwera i wgrywamy go tutaj. Na samym dole klikamy Wykonaj.

Po poprawnym wykonaniu importu dostajemy wiadomość, że import bazy danych został zakończony sukcesem.

Zaktualizuj plik wp-config.php

Zalogujcie sę na dane serwera przez Filezillę. Przejdźcie do pliku wp-config.php w głównym folderze WordPressa

Otwórz plik wp-config.php za pomocą edytora tekstowego np. (Notepad ++) i zmień informacje o bazie danych, z którą WordPress ma się teraz połączyć.

W pliku wp-config.php edytuj:

define(’DB_NAME’, 'nazwa_bazy_danych’);

define(’DB_USER’, 'nazwa_uzytkownika_bazy_danych’);

define(’DB_PASSWORD’, 'haslo_do_bazy_danych’);

define(’DB_HOST’, 'adres_bazy_danych’);

Po wprowadzeniu zmian zapisz plik. Po zmianie danych w pliku wp config.php, wrzucamy plik na serwer FTP.

Zmień DNSy

Ostatnim krokiem w przeniesieniu strony WordPress na inny serwer jest skierowanie DNSów domeny na DNS nowego serwera.

Przechodzimy do zmiany DNS w panelu hostingu. W tym celu logujemy się na Cyber_Folks i przechodzimy do sekcji domeny.

Wybieramy domenę, która nas interesuje i klikamy akcje.

Wybieramy zarządzaj.

Przechodzimy do sekcji zewnętrzne serwery DNS i klikamy modyfikuj.

Dodajemy właściwe DNS. W moim przypadku będzie to:

ns1.netmark.pl

ns2.netmark.pl

Dalej klikamy zapisz.

Po zmianie DNS strona WordPress powinna być już aktywna na nowym hostingu. Sprawdzimy DNSy. W tym celu wchodzimy na who.is/whois/nazwadomeny.pl w tym wypadku who.is/whois/biletykomunikacyjne.pl i widzimy, że DNSy już się sparowały:

Po migracji można usunąć domenę ze starego serwera, aby niepotrzebnie tracić miejsca na serwerze, ponieważ strony WordPress są o wiele cięższe od zwykłych stron .php.

W tym celu logujemy się do panelu administratora starego serwera np. Direct Admin i klikamy w domenę, którą chcemy usunąć z serwera.

Przechodzimy do sekcji konfiguracja domen.

Ponownie wybieramy domenę, którą chcemy usunąć z serwera i po prawej stronie klikamy zaznacz a następnie usuń.

Wyskakuje okienko potwierdzenia prośby o usunięcie domeny z serwera. Zaznaczamy usuń dane domeny i klikamy potwierdź.

Domena została poprawnie usunięta.

Migrację strony WordPress można zrobić o wiele łatwiej, z użyciem wtyczki All In One WP Migration, ale ten sposób omówię innym razem – jeśli oczywiście będziecie zainteresowani.

Podsumowanie

Czy migracja strony WordPress na inny serwer FTP jest skomplikowana? Tak, o ile robisz to pierwszy raz i nie wiesz nic na temat bazy MySQL. W przypadku importu danych może zdarzyć się, że plik SQL nie zostaje poprawnie wgrany. W moim przypadku pomógł ponowny eksport bazy MySQL i import na nowym serwerze oraz dostosowanie wersji bazy. Problemem był import z bazy MySQL 5.6 do 5.7.

Przy migracji strony WordPress na inny serwer wraz z bazą danych może pojawić się o wiele więcej problemów, jak: nieprawidłowe kodowanie znaków przy zmianie serwera MySQL, błędy przy importowaniu bazy danych, problem ze zbyt dużym plikiem SQL i wiele innych. Jeśli chcecie, omówimy je następnym razem. Dajcie znać w komentarzach!

Agnieszka

2 thoughts on “Jak przenieść stronę WordPress na inny hosting?”

  1. Nie podejmę się tego nawet z Twoją instrukcją. Przeniesienie strony na inny hosting bez wsparcia programisty to ogromne ryzyko! Że się nie bałaś…

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *