Przenoszenie WordPressa na inny serwer (kopiowanie przez FTP)

Nie odkryję tu Ameryki opisując po raz kolejny sposoby samodzielnego przeniesienia strony na przykładzie popularnego WordPressa. Tym bardziej, że cała procedura nie jest trudna. Mimo to czasem podczas jej wykonywania może zaskoczyć niemałym psikusem. W tym wpisie pokażę przenoszenie WordPressa na inny serwer w opcji bez dostępu do tzw. kokpitu, a mając jedynie możliwość zalogowania się do naszej strony przez protokół FTP.

Nie czujesz się na siłach aby przenieść stronę na inny serwer? – ZLEĆ NAM TO ZADANIE.

Załóżmy, że mamy niewielki blog na WordPressie i tylko dostęp do strony przez protokół FTP. Jego parametry to np.

host: mojastrona.pl
login: ftp@mojastrona.pl
hasło: Strona#*20

Łączenie się ze istniejącą stroną przez protokół FTP

Do połączenia się z FTP możemy wykorzystać m.in. darmową Filezillę lub komercyjny Total Commander. Filozofia działania tego typu programów jest podobna. Mamy tutaj do czynienia z dwoma okienkami, które jedno przedstawia strukturę plików i katalogów na naszym komputerze (dysku), natomiast w drugim zobaczymy zdalną lokalizację serwera ze stroną www. Najczęściej używaną funkcją w kliencie FTP (Filezilli/TC) jest kopiowanie plików lub całych folderów pomiędzy jednym oknem a drugim.

Na potrzeby tej porady użyję Total Commandera (to tak z przyzwyczajenia).

Fot. 1. Total Commander tuż po uruchomieniu

Okno programu Total Commander (Przenoszenie WordPressa na inny serwer ze zmianą domeny)

Źródło: Materiały własne 

Lewe okienko oznaczone jako [1] przedstawia strukturę folderów i plików na moim dysku twardym w lokalizacji s:\strona-www\ (informacja o lokalizacji widoczna jest na niebieskim pasku adresu), natomiast okno [2] to dane na serwerze/hostingu. Po zalogowaniu do FTP za pomocą przycisku [3] możemy kopiować dane pomiędzy dwoma oknami – z lewego na prawe lub vice versa.

Wybaczcie, że tylko ogólnie opisałem sposób działania klienta FTP, ale głównym tematem niniejszego wpisu jest przenoszenie WordPressa na inny serwer i dlatego dalej już o tym właśnie;)

W przypadku, gdy nie mamy dostępu do kokpitu i nie możemy użyć żadnej wtyczki do przenoszenia naszej strony, proponuję przekopiować WSZYSTKIE pliki WordPressa na dysk twardy komputera. Pokazałem to na poprzedniej ilustracji – z okna [2] przekopiowałem wszystkie dane do okna [1].

Eksport bazy danych z hostingu źródłowego

Struktura strony to nie wszystko. Do działania WordPressa potrzebujemy jeszcze bazy danych, w której są m.in. wpisy, treści stron, dane konfiguracyjne wtyczek itp. Taką bazę możemy wyeksportować w postaci jednego pliku z rozszerzeniem SQL od obecnego dostawcy hostingu np. przez popularną aplikację do zarządzania bazami danych o nazwie phpMyAdmin. Są oczywiście inne metody „dobrania się” do bazy danych, ale w tym artykule pokażę tylko import przez PMA.

Generalnie dostęp do phpMyAdmin będziemy mieli po zalogowaniu się do panelu admina naszego hostingu, jednak nie jest to reguła. Poniżej podaję kilka przykładowych adresów do aplikacji phpMyAdmin udostępnionych przez firmy hostingowe bez konieczności logowania do panelu admina:

Home.pl – sql.nazwa_serwera.home.pl (np. sql.serwer23659.home.pl)
Hekko.pl – nazwa_serwera.hekko.pl/phpmyadmin (np. s57.hekko.pl/phpmyadmin)
OVH – phpmyadmin.ovh.net
Telefirma.eu – telefirma.eu/phpmyadmin

Aby zalogować się do phpMyAdmina będziemy potrzebować jeszcze co najmniej dwóch parametrów: nazwy użytkownika bazy danych oraz hasła dla tego użytkownika. Skąd go wziąć? Otóż znajdziemy go w pliku konfiguracyjnym naszego WordPressa. Plik ten mający nazwę wp-config.php oznaczyłem na poprzedniej ilustracji jako [4]. Otworzyć go możemy dowolnym edytorem tekstu, np. notatnikiem lub notepadem++. W ramce zaznaczyłem naqjważniejsze wartości, których będziemy potrzebowali.

Fot. 2. Zawartość pliku wp-config w edytorze Notepad++

Zawartość pliku wp-config w edytorze Notepad++

Źródło: Materiały własne 

Mając parametry dostępu do naszej bazy danych możemy się zalogować do phpMyAdmin:

Fot. 3. Logowanie do phpMyAdmin

Logowanie do phpMyAdmin

Źródło: Materiały własne

Fot. 4. Okno phpMyAdmin po zalogowaniu

Okno phpMyAdmin po zalogowaniu

Źródło: Materiały własne 

Gdy jesteśmy już w phpMyAdminie zobaczymy dwa panele: lewy [1] i prawy [2]. Gdy wybierzemy z lewego panelu swoją bazę danych (tę, którą mieliśmy wpisaną w pliku wp-config w zmiennej „DB_NAME”) to ujrzymy jej elementy składowe, czyli tabele.

Aby wyeksportować całą bazę danych do pliku najłatwiej jest użyć przycisku „Eksport”.

Fot. 5. Eksportowanie bazy danych

Eksportowanie bazy danych

Źródło: Materiały własne 

W większości przypadków nie trzeba zmieniać domyślnych ustawień phpMyAdmina i należy jedynie wybrać przycisk „Wykonaj”. Po tej czynności zapisujemy plik bazy danych na dysku twardym naszego komputera.

Przenoszenie WordPressa na inny serwer ze zmianą domeny

Jeśli Twój WordPress w lokalizacji docelowej (po przeniesieniu) będzie posiadał tę samą domenę co wcześniej np. mójblog.pl to możesz opuścić ten rozdział i przejść do kolejnego. Natomiast gdy nasza domena się zmieni na inną to będziemy musieli zająć się jeszcze edycją wpisów w pliku bazy danych.

Fot. 6. Plik wcześniej wyeksportowanej bazy danych otworzonej w edytorze tekstu Notepad++

Masowa zmiana adresów URL pliku bazy danych w edytorze tekstu Notepad++

Źródło: Materiały własne 

Niestety WordPress mimo swoich wielu zalet ma też i wady. Jedną z nich jest to, że w bazie danych „na sztywno” wpisuje adresy URL w sposób bezwzględny, czyli ścieżkę razem z domeną. W ramce zaznaczyłem taki właśnie zapis – http://stara-strona.pl. W niektórych bazach danych typowego bloga zbudowanego na WordPressie, tego typu wpisów, gdzie „trzonem” adresu URL jest domena mogą być tysiące, a nawet dziesiątki tysięcy. Musimy je zatem zmienić z uwzględnieniem nowej domeny.

Edycję pliku bazy danych wykonujemy na jego kopii. W razie jakiegoś niepowodzenia nie będziemy musieli po raz kolejny przechodzić przez procedurę eksportu ze starego hostingu.

Fot. 7. Masowa zmiana adresów URL pliku bazy danych w edytorze tekstu Notepad++

Masowa zmiana nazw

Źródło: Materiały własne 

Procedura zamiany adresów URL na te z nową domeną nie jest trudna, ale trzeba być precyzyjnym. Gdy otworzymy plik z kopią bazy danych to w edytorze tekstu znajdźmy dowolny adres zawierający nazwę ze „starą” domeną. Skopiujmy teraz cały trzon, czyli tak jak zaznaczono na powyższej ilustracji. Wybierzmy z menu Edycja edytora tekstowego funkcję Zamień… W „szukany tekst” wklejmy skopiowany wcześniej adres, a w pole „zamień na” umieść adres URL z uwzględnieniem „nowej domeny” – tutaj będzie nią strona-z-nowa-domena.com.pl. Sprawdzamy czy nie ma błędów i następnie wciskamy „Zamień wszystkie”. Po ukończeniu zapisujemy plik i zamykamy.

Gdy nie popełniliśmy po drodze żadnych błędów to w ten sposób otrzymujemy gotowy plik bazy danych, który w kolejnym etapie użyjemy do importu na nowym hostingu.

Przygotowanie docelowego (nowego) hostingu

Zakładam, że masz dostęp do panelu admina na nowym hostingu i phpMyAdmina.

Jeśli jednak nie posiadasz takiego dostępu to poproś administratora o parametry logowania się przez protokół FTP do Twojej nowej strony. Oprócz tego poproś o utworzenie nowej bazy danych i jej dane.

Po utworzeniu nowego połączenia FTP i nowej bazy danych (zapisz dane logowania), zabierzmy się za edycję pliku konfiguracyjnego WordPressa. Otwieramy w edytorze tekstu plik wp-config.php (znajduje się on na dysku twardym, w miejscu gdzie mamy kopię naszego WordPressa wykonaną na początku tego poradnika).

Fot. 8. Zmiana parametrów w pliku wp-config.php przy użyciu edytora tekstu Notepad++

Plik wcześniej wyeksportowanej bazy danych otworzonej w edytorze tekstu Notepad++

Źródło: Materiały własne

W pliku wp-config.php aktualizujemy dane o nowe wartości. Na końcu go zapisujemy i zamykamy.

Kopiowanie danych na nowy serwer

Gdy plik konfiguracyjny jest już uzupełniony o nowe wartości to możemy, za pomocą protokołu FTP (Filezillą lub Total Commanderem), zacząć przesyłać dane na nowy serwer. Z pewnością potrwa to trochę czasu, w zależności od złożoności naszej strony.

Fot. 9. Total Commander i kopiowanie plików na serwer

Total Commander i kopiowanie plików na serwer

Źródło: Materiały własne

Teraz możemy zająć się importem bazy danych przez phpMyAdmina. O ile eksport bazy danych nie przysparzał nam praktycznie żadnych problemów to import czasami może sprawić nam kłopot. Jeśli posiadamy niewielką stronę (blog) i tym samym niewielki plik bazy danych to import powinien przebiec bez zakłóceń.

Zatem zalogujmy się do phpMyAdmina (na nowym serwerze)

Fot. 10. Wybieramy naszą bazę z panelu po lewej stronie

Wybieramy naszą bazę z panelu po lewej stronie

Źródło: Materiały własne

Po wybraniu bazy danych warto zauważyć, że jest jeszcze pusta. Zaraz, podczas importu, wypełni się tabelami. Tak więc przechodzimy do sekcji „Import”.

Fot. 11. Sekcja „Import” w phpMyAdmin

Sekcja „Import” w phpMyAdmin

Źródło: Materiały własne

Po kliknięciu w przycisk „Wybierz plik” [1] możemy wskazać nasz plik z bazą danych. W tym przypadku maksymalny rozmiar pliku wynosi 200 MB. U różnych dostawców ten limit może być różny. Gdyby jednak zdarzyło się, że plik bazy danych przekracza wyznaczony limit to taki plik musimy „spakować” lub przesyłać „na raty”. Pakować pliki z rozszerzeniem SQL możemy choćby darmowym 7-zip. Wybieramy format wyjściowy, np. ZIP. Następnie powinniśmy zmienić nazwę pliku, aby miała postać „nazwa_pliku.sql.zip”.

Mogę podać jako ciekawostkę, że przy eksporcie mieliśmy do czynienia z bazami danych MySQL rzędu 1 GB i więcej. Niestety, przesłanie tak dużej bazy zazwyczaj stwarza mniejsze lub większe problemy.

Na końcu klikamy na przycisk „wykonaj” [2] i czekamy cierpliwie na wykonanie importu.

Fot. 12. Komunikat z poprawnym wykonaniem importu

Komunikat z poprawnym wykonaniem importu

Źródło: Materiały własne

Prace końcowe

Gdy wykonaliśmy wszystkie kroki poprawnie i nie wystąpiły po drodze żadne błędy możemy zmienić delegację naszej domeny, aby poprawnie „widziała” nową lokalizację strony (nowy serwer). Wystarczy wejść do panelu domeny i zaktualizować serwery DNS. Poniżej przykłady nazw serwerów:

Home – dns.home.pl, dns2.home.pl
Hekko – ns1.hekko.net.pl, ns2.hekko.net.pl
az.pl – ns1.az.pl, ns2.az.pl

Nie czujesz się na siłach aby przenieść stronę na inny serwer? – ZLEĆ NAM TO ZADANIE.

Dziękuję za uwagę. Komentarze mile widziane:)

Usługi informatyczne - cała Polska


Dodano

Słowa kluczowe:

0
0
votes
Article Rating
Subscribe

Powiadom o

guest



2 komentarzy


najstarszy

najnowszy
oceniany

Inline Feedbacks
View all comments

B Świętojański

Dzięki za pomoc! 🙂

Adam

Nie ma sprawy 🙂