Wtyczki BWS (BestWebSoft) pod ostrzałem – WordPress SEC Alert
2 maja 2017
Automatyczne rozwijane menu z listą kategorii w WordPress
3 maja 2017

Przeniesienie WordPress przez konsolę Linux SSH – Instrukcja krok po kroku

W dzisiejszym poradniku pokażę jak można przenieść stronę (ze zmianą domeny) z pomocą konsoli systemu linux (Shell SSH), dostępnej w praktycznie każdej usłudze serwera dedykowanego i VPS.

Dlaczego warto przenosić WordPress przez SSH?

Jest kilka kluczowych powodów, dla których ta operacja jest wg. mnie najlepszym sposobem na przeniesienie strony internetowej – oto najważniejsze z nich:

  • Zaoszczędzony czas – chcąc przenieść stronę normalnie np. z pomocą Cyberduck musimy ściągnąć pliki na swój komputer, co zabiera sporo czasu oraz ogranicza prędkość naszego łącza, a następnie poświęcić kilka razy więcej czasu na ich ponowny upload do serwera docelowego.
  • Mniej błędów – W porównaniu z tradycyjnym sposobem, przenoszenie przez konsolę Midnight Commandera powoduje bardzo małą ilość błędów, a podczas licznych tego typu operacji nie miałem żadnych problemów z integralnością kopii czy błędami odczytu na docelowej domenie.
  • Bezpieczeństwo – Jest to dla mnie najistotniejsze podczas wykonywania wszelakich zleceń w zależności od zlecenia i rodzaju klauzuli poufności zachowuje szczególne środki ostrożności – np. operacje na wrażliwych plikach i danych wykonuje na zdalnych serwerach Windows, tworzonych osobno dla każdej operacji, identycznie ma się sprawa dla kont FTP, a dodatkowo połączenia SSH są silnie szyfrowane.

Przenosimy stronę na inny serwer ze zmianą domeny 

Połączenie i logowanie na serwery 

Do tego celu wykorzystamy program Putty – wystarczy uzupełnić dane połączenia i kliknąć “Open“.

Po uruchomieniu się konsoli poproszony zostaniesz o zalogowanie – podczas wpisywania hasła, nie zostanie pokazana ilość wpisanych znaków. Po poprawnym zalogowaniu ujrzysz ekran podobny do tego:

Wprowadź komendę – “mc” odpowiedzialną za uruchomienie Midnight Commandera. Jeżeli aplikacja nie jest dostępna na Twoim serwerze – tutaj znajdziesz instrukcję instalacji.

I zobaczysz takie okno:

Teraz połącz się z serwerem, z którego chcesz przenieść pliki – w tym celu wybierz z menu “Left > FTP Link…” i pokaże się okno z prośbą o podanie danych do połączenia – wpisz je wg wzoru:

[email protected]

Wskazówka: możesz wklejać parametry połączenia – takie jak loginy czy hasła – w tym celu wciśnij CTRL, a następnie prawy przycisk myszy i “Paste“.

Taką samą operację wykonujemy w prawym panelu – klikamy “Right > FTP Link…” i wykonujemy ponownie powyższe kroki.

Następnie w obu panelach otwieramy katalogi na serwerze zgodnie z założeniami – po lewej stronie otwieramy główny katalog domeny, którą przeniesiemy, a po prawej katalog na serwerze docelowym.

Kopiowanie plików przez SSH z serwera na serwer – FTP na FTP

Operacja jest prosta – operujemy tylko 4 przyciskami na klawiaturze:

  • INSERT (lub prawy przycisk myszy) – do zaznaczania plików
  • F5 – rozpoczęcie kopiowania plików
  • F8 – Kasowanie plików
  • ENTER – Zatwierdzanie operacji

Kiedy już to wszystko wiesz – z prawego docelowego serwera usuwamy plik index.html – w tym celu wciśnij INSERT, aby podświetlił się na żółto i potwierdź usunięcie pliku. Podobnie zrób z niepotrzebnymi plikami na Twoim serwerze docelowym.

Kiedy już opanujesz technikę usuwania plików – czas na przeniesienie ich z jednego serwera na drugi.

Zaznacz pierwszy plik w lewym panelu lewym przyciskiem myszy, a następnie wciśnij INSERT, aż do ostatniego elementu – wszystkie pliki zostaną podświetlone na żółto – wtedy wciśnij F5ENTER’em zatwierdź operację.

Zostanie przeprowadzone skanowanie plików, a następnie rozpocznie się kopiowanie.

Czas przeniesienia zależy od prędkości serwerów, limity itp. W moim przypadku to 3 minuty na każde 500 mb. Standardowo jak w każdym systemie najdłużej kopiują się małe pliki – a tych w WordPressie nie brakuje. W moim przypadku cała procedura przeniesienia plików WordPress’a zajęła mi około 20 minut.

Import i Export bazy danych WordPress’a

Bazę danych przenoszę już standardową metodą – poprzez panel phpMyAdmin.

Najpierw logujemy się do bazy danych na serwerze, z którego przenosimy stronę i po poprawnym zalogowaniu oraz przejściu do wybranej bazy klikamy Export > Dostosuj > Zapisz do pliku (zip – lub inną kompresję).

Po pobraniu pliku – utwórz bazę danych na nowym serwerze, zaloguj się na nią i zaimportuj ściągnięty wcześniej plik.

Po poprawnym wykonaniu tej czynności – na docelowym serwerze w pliku wp-config.php (lub innym, w którym znajdują się dane bazy danych) wprowadź dane nowej bazy danych.

WordPress w innej domenie – Zmiana domeny w bazie danych

Pozostała ostatnia czynność – zmiana domeny po przeniesieniu WordPress’a. W tym celu użyjemy narzędzia Interconnect/IT Search & Replace, które należy pobrać z tej strony i wgrać na serwer do dowolnie nazwanego katalogu, a następnie uruchomić w przeglądarce adres, w którym znajduje się skrypt np. domena.pl/search-and-replace/ .

W narzędziu ostrożnie podaj poprzedni adres strony WordPressa, a w oknie obok nowy adres.

Poniżej tych pól, znajdują się dane do bazy danych – jeżeli nie są dostępne, należy je uzupełnić oraz trzy tryby działania programu.

Interesują nas dwa ostatnie przyciski

Dry run – Sprawdza ile i jakie zmiany wprowadzi narzędzie

Live run – Uruchamia proces znajdowania i podmieniania starego adresu WordPress na nowy

Jeżeli w wyniku Dry Run nie pojawi się nam żaden błąd, możesz uruchomić proces zamiany domen w bazie.

Pamiętaj, aby zrobić kopię bazy przed wykonaniem jakichkolwiek czynności!

Kiedy cały proces się zakończy – usuń skrypt przyciskiem Delete me – jeżeli nie zobaczysz ekranu potwierdzającego usunięcie, należy usunąć folder z serwera samodzielnie.

I to wszystko.

W procesie kopiowania może zostać pominięty plik .htaccess – zalecam ponowne potwierdzenie ustawień odnośników poprzez Ustawienia > Bezpośrednie odnośniki

Całość zajęła około 35 minut.

Jakub Jaworowicz
Jakub Jaworowicz
Marketingiem zajmuję się od 15 roku życia, zacząłem od brzydkich stron w kreatorze stron usługi Republika serwisu Onet - obecnie obsługuje ponad 200 klientów i 450 serwisów WWW rocznie, które tworzyłem lub mam je pod swoją opieką (w zakresie wsparcia i utrzymania). Ostatnio etatowo pracowałem jako Specjalista ds Marketingu w największym ogrodniczym sklepie internetowym (SADOWNICZY.PL) oraz jako kierownik działu wsparcia sprzedaży dla tego sklepu.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *