Przenoszenie strony na inny serwer

WordPress Duplicator
Nową stronę tworzymy zwykle na własnym komputerze lub na jakimś serwerze testowym. Gdy uznamy, że prace dobiegły końca, musimy przenieść cały serwis na docelowy serwer. WordPress nie posiada sensownego mechanizmu, który ułatwiałby taką operację. Wbudowany system eksportu danych nie nadaje się do przenoszenia całych serwisów – nie uwzględnia on bowiem ustawień strony, szablonu, wtyczek, menu i widgetów. Operację przenoszenia WordPressa na inny serwer można wykonać ręcznie, kopiując wszystkie pliki i bazę danych, a następnie modyfikując adresy URL, ale ponieważ zawsze staram się opisywać rozwiązania najprostsze, to zrobimy to za pomocą darmowej wtyczki Duplicator.

Aktualizacja – 18.01.2016: wpis został dostosowany do aktualnej wersji wtyczki (1.1.0).

Duplicator to narzędzie, które czyni cały proces przenoszenia zbudowanej na WordPressie strony pomiędzy serwerami tak prostym, że nie jestem w stanie wyobrazić sobie, jak można byłoby zrobić to jeszcze łatwiej. Rozszerzenie to można również wykorzystać do klonowanie serwisów lub wykonywania kopii bezpieczeństwa.

Po aktywacji wtyczki w menu panelu administracyjnego pojawi się nowe menu Duplicator. Znajduje się w niej sześć sekcji. Główna i najważniejsza to Packages, gdzie dzieje się cała magia. Settings zawiera ustawienia wtyczki. Tools to kilka narzędzi, które mogą pomóc w znalezieniu przyczyn ewentualnych błędów oraz generujące dane diagnostyczne, które w razie problemów należy przesłać autorowi wtyczki. Sekcja Help zawiera odnośniki do dokumentacji, a About – informacje o autorze.

Duplicator - Packages

Duplicator pozwala na utworzenie paczki instalacyjnej (plik ZIP), która zawiera wszystkie pliki naszej strony (włącznie z plikami WordPressa) i specjalnego instalatora (skrypt PHP), za pomocą którego automatycznie odtworzymy cały serwis znajdujący się w paczce na drugim serwerze. Instalator ten wykonuje również wszystkie operacje niezbędne do prawidłowego działania strony w nowym miejscu, takie jak zmiana informacji o bazie danych (login, hasło i nazwa) czy zmiana domeny we wszystkich adresach URL (zarówno tych znajdujących się we wpisach, jak i przechowywanych w konfiguracji WordPressa, wtyczek i szablonu).

Konfiguracja wtyczki

Zacznijmy od przejrzenia ustawień wtyczki. Znajdziemy je w menu Settings. Strona ustawień jest podzielona na dwie sekcje.

Duplicator - ustawienia

Sekcja Plugin zawiera kilka ustawień samej wtyczki. Poza numerem jej wersji znajdziemy tutaj opcje pozwalające na automatyczne usunięcie podczas dezinstalacji ustawień wtyczki i katalogu, w którym przechowywane są utworzone paczki. Poznamy także pełną ścieżkę katalogu, do którego zapisywane są wszystkie pliki. Opcja Disable .htaccess File In Storage Directory usuwa plik htaccess z katalogu, do którego wtyczka zapisuje pliki. Opcję tę należy włączyć tylko gdy napotkamy na problemy z pobieraniem utworzonych plików.

Duplicator - ustawienia

Sekcja Package zawiera kilka opcji związanych z procesem tworzenia paczek. Opcja Attempt Network Keep Alive pomaga w przypadku problemów z tworzeniem dużych archiwów. Opcja Database Build określa metodę tworzenia zrzutu bazy danych, z jakiej korzysta wtyczka. W większości przypadków sprawdzi się opcje Use PHP. Opcja Query Limit Size pozwala na określenie liczby rekordów zapisywanych w jednym zapytaniu SQL. Im wyższa wartość, tym szybciej zostanie wykonany zrzut bazy danych, ale zużycie pamięci będzie większe. Metoda Use mysqldump korzysta z narzędzia mysqldump, jest szybsza i powinna być włączana dla dużych baz danych. Może się jednak zdarzyć, że na niektórych serwerach współdzielonych nie będzie ona działać. Jeśli nie wiemy, z której metody skorzystać, zostańmy przy ustawieniach domyślnych.

Ostatnia opcja Package Debug pozwala na włączenie wyświetlania dodatkowych informacji technicznych na liście wygenerowanych paczek. Przydać się to może w przypadku problemów z wygenerowaniem paczki.

Tworzenie paczki instalacyjnej

W zakładce Packages znajdziemy przycisk Create New, który pozwala na utworzenie nowej paczki instalacyjnej. Po jego kliknięciu pojawi się strona z ustawieniami procesu generowania plików, podzielona na kilka sekcji.

Duplicator - sprawdzenie wymagań

W sekcji Requirements znajdziemy informacje na temat wymagań wtyczki odnośnie naszego serwera. Wymagania te nie są zbyt wygórowane i na większości serwerów nie będzie z nimi problemów. Zielone komunikaty Pass oznaczają, że dane wymaganie jest spełnione. Wtyczka sprawdza, czy posiadamy odpowiednią wersję PHP (wymagana jest wersja 5.2.9 lub nowsza), czy mamy zainstalowane moduły ZipArchive i MySQLi (jeśli ich nie ma, należy skontaktować się z administratorem serwera), czy dostępne są wymagane przez wtyczkę funkcje PHP oraz czy tryb Safe Mode jest wyłączony. Sprawdzane są również uprawnienia zapisu do katalogów, w których wtyczka tworzy swoje pliki, wersja bazy danych MySQL (5.0 lub nowsza), a także obecność pozostałości po nieudanych procesach tworzenia paczki instalacyjnej (Reserved Files).

Duplicator - ustawienia katalogu docelowego

W kolejnej sekcji możemy wprowadzić nazwę naszej nowej paczki instalacyjnej (pole Name), a także opcjonalnie dodać do niej opis (przycisk Notes). Sekcja Storage wyświetla informację o katalogu, do którego zostanie zapisana paczka. W płatnej wersji Pro mamy możliwość przesłania wygenerowanych plików do wybranej chmury (Dropbox, Google Drive lub Amazon S3), a także na dowolny serwer za pośrednictwem FTP.

Duplicator - ustawienia plików

Sekcja Archive zawiera dwie zakładki. W pierwszej z nich (Files) możemy wprowadzić katalogi (Directories), które nie zostaną dołączone do paczki instalacyjnej. Warto dodać tu katalog cache (o ile taki posiadamy). Jeśli na przykład tworzymy kopie bezpieczeństwa, które są zapisywane również na naszym serwerze, to warto wykluczyć katalog, do którego one trafiają. Możemy także wykluczyć pliki o konkretnych rozszerzeniach (File extensions), które nie mają trafić do paczki. Można tu na przykład wprowadzić rozszerzenie tmp, a w niektórych przypadkach dobrym pomysłem będzie wykluczenie wszelkiego rodzaju archiwów (pliki zip, rar, tag.gz i tym podobne). Należy jednak uważać, aby nie wykluczyć czegoś istotnego.

Duplicator - ustawienia bazy danych

W zakładce Database możemy wykluczyć tabele bazy danych. Opcja ta będzie przydatna w sytuacji, gdy w jednej bazie mamy dane kilku serwisów.

Duplicator - ustawienia instalatora

Sekcja Installer pozwala na wprowadzenie danych serwera docelowego, na którym mamy zamiar zainstalować naszą paczkę instalacyjną. Jeśli pozostawimy wszystkie pola puste, instalator pozwoli nam na wprowadzenie wymaganych informacji w momencie instalacji.

W części MySQL Server wprowadzamy dane serwera baz danych – host, port (zwykle domyślny będzie OK), nazwę bazy danych i nazwę użytkownika. Warto zwrócić uwagę, że nie ma pola do wprowadzenia hasła – będziemy musieli podać je podczas instalacji.

W części Advanced Options znajdziemy opcje Enforce on AdminEnforce on Login, które dotyczą tylko stron z cetyfikatem SSL. Pozwalają one na wymuszenie dostępu do panelu administracyjnego i ekranu logowania przez połączenie szyfrowane (https). Domyślnie Duplicator wyłącza wsparcie dla SSL. Opcje związane z cache (Keep EnabledKeep Home Path) pozwalają na zachowanie ustawień cache (domyślnie cache jest wyłączany).

W polu New URL możemy podać adres URL, jaki ma mieć serwis po zainstalowaniu. Instalator automatycznie zamieni w całej bazie danych stary (aktualny) adres na nowy.

Po wprowadzeniu wszystkich informacji możemy przejść dalej klikając przycisk Next.

Następnym krokiem jest skanowanie naszego serwisu. Na tym etapie nie jest jeszcze tworzona paczka instalacyjna – wtyczka zbiera jedynie informacje o plikach i bazie danych. Proces ten może trwać od kilku do kilkudziesięciu sekund – zależy do od ilości plików, wielkości bazy danych i wydajności serwera.

Po zakończeniu skanowania zobaczymy ekran podsumowania, podzielony na dwie sekcje.

Duplicator - skanowanie

Pierwsza sekcja zawiera wynik diagnostyki serwera, ustawień PHP i WordPressa. Wtyczka obsługuje praktycznie wszystkie najpopularniejsze serwery, tak więc nie powinno tu być żadnych problemów. Jedynym problemem, który może pojawić się podczas diagnostyki konfiguracji PHP, jest zbyt krótki maksymalny czas wykonywania skryptów. Jeśli otrzymamy taki komunikat, a nasza firma hostingowa nie będzie chciała zwiększyć tego limitu, to jedynym wyjściem będzie wykluczenie większych katalogów, tak aby generacja paczki trwała krócej. Diagostyka WordPressa sprowadza się do sprawdzenia jego wersji (wtyczka wymaga wersji 3.7 lub nowszej), pliku wp-config.php oraz katalogu cache (który warto wykluczyć).

Duplicator - skanowanie

Sekcja Archive zawiera wyniki skanowania plików naszej strony oraz bazy danych. Jak widać na zamieszczonym wyżej zrzucie ekranu, najczęstszym problemem są ostrzeżenia związane ze zbyt dużym rozmiarem plików lub bazy. W tym konkretnym przypadku występuje też problem z nazwami niektórych plików (Name Checks), które zawierają niedozwolone znaki. Szczegółowe informacje dotyczące tych ostrzeżeń możemy zobaczyć klikając linki ze strzałką.

Duplicator - skanowanie

Jeśli przejrzeliśmy wszystkie ostrzeżenia i chcemy kontynuować proces generowania paczki instalacyjnej, należy zaznaczyć opcję A warning status was detected, are you sure you want to continue? i kliknąć przycisk Build.

Duplicator - tworzenie paczki instalacyjnej

Proces tworzenia paczki instalacyjnej może chwilę potrwać. Wtyczka zrzuca zawartość bazy danych, tworzy skompresowane archiwum wszystkich plików i generuje skrypt instalatora. W trakcie generacji paczki nie wolno zamykać okna przeglądarki.

Duplicator - status tworzenia paczki

Po zakończeniu procesu pojawi się strona informująca, że wszystko poszło dobrze, wraz z nazwą paczki, czasem jej tworzenia oraz linkami do pobrania instalatora (Installer) i paczki instalacyjnej (Archive). Nowa paczka pojawi się również na liście dostępnych paczek (sekcja Packages). Lista ta zawiera między innymi informacje o czasie wykonania i rozmiarze paczki, a także o wersji wtyczki, jaką była wykonana. Klikając link View uzyskamy dostęp do pliku ze zrzutem bazy danych (nie będzie nam on potrzebny, ale dobrze wiedzieć, że tam jest) oraz logu procesu generowania paczki (może się przydać do rozwiązywania ewentualnych problemów).

Po prawej stronie znajdują się przyciski InstallerArchive, za pomocą których możemy pobrać na dysk odpowiednio instalatora i paczkę instalacyjną. Warto zwrócić uwagę, że nazwa paczki zawiera tajemniczo wyglądającym ciągiem znaków – jest tam on dlatego, aby nikt nieuprawniony nie był w stanie odgadnąć nazwy pliku paczki i pobrać go z naszego serwera.

Instalacja paczki na serwerze

Po pobraniu instalatora i paczki musimy przesłać oba pliki na docelowy serwer. Cały serwis zostanie zainstalowany w katalogu, w którym umieścimy pliki. Miejsce, do którego powinniśmy przesłać pliki, zależy od naszego serwera – najczęściej będzie to katalog public_html, ale nasza domena może być przypisana do innego katalogu. Jeśli mamy wątpliwości gdzie powinien zostać zainstalowany WordPress, skontaktujmy się z firmą hostingową utrzymującą nasz serwer.

Po przesłaniu plików musimy otworzyć skrypt instalatora w przeglądarce. Aby to zrobić musimy wpisać adres naszej docelowej strony, dodając do niego installer.php, na przykład http://nowa-domena.pl/installer.php. Jeśli wszystko poszło dobrze, powinniśmy zobaczyć stronę z pierwszym krokiem instalacji.

Duplicator - instalacja

W pierwszym kroku możemy sprawdzić, czy serwer, na którym chcemy zainstalować naszą paczkę, spełnia minimalne wymagania skryptu (sekcja Requirements) oraz uzupełnić dane bazy danych. W polu Host należy wpisać nazwę serwera baz danych (w większości przypadków będzie to localhost), w polu User – nazwę użytkownika bazy danych, w polu Password – hasło, a polu Name – nazwę naszej bazy danych.

Instalator wymaga pustej bazy danych, tak więc jeśli w naszej coś już jest, możemy wybrać opcję Connect and Remove All Data, która usunie wszystkie tabele ze wskazanej bazy. Alternatywnie możemy wybrać opcję Create New Database, która utworzy nową bazę danych (o ile taka jeszcze nie istnieje, a wprowadzony użytkownik bazy danych ma do tego uprawnienia). Klikając przycisk Test Connection możemy sprawdzić poprawność wpisanych danych.

W sekcji Advanced Options możemy wybrać dodatkowe opcje instalacji. Opcja Manual package extraction spowoduje, że instalator załaduje tylko dane do bazy danych i nie rozpakuje archiwum z plikami. Ta opcja może być przydatna gdy z jakiegoś powodu (na przykład zbyt dużego pliku) automatyczne rozpakowanie archiwum nie powiedzie się. Opcja Fix non-breaking space characters powoduje zamianę problematycznych znaków UTF8 na spacje. Z tej opcji można skorzystać tylko jeśli po imporcie widzimy w treści wpisów dziwne znaczki lub znaki zapytania. Pozostałe opcje zostały omówione przy okazji tworzenia paczki instalacyjnej.

Jeśli nasz serwer spełnia wymagania skryptu, a test połączenia z bazą danych zakończył się pomyślnie, możemy zaznaczyć opcję I have read all warnings & notices i rozpocząć automatyczne rozpakowanie paczki i import danych do bazy klikając przycisk Run Deployment.

Po zakończeniu instalacji paczki zostaniemy przeniesieni do kroku drugiego, który wykona zamianę starych adresów URL i ścieżek na nowe. Jest to konieczne, ponieważ w ustawieniach WordPressa oraz treści naszych wpisów mogą się znajdować pełne adresy, wraz z nazwą domeny z poprzedniego serwera. Musimy więc zamienić stary adres serwisu na nowy.

Duplicator - instalacja

W sekcji Old Settings znajdują się stary adres strony oraz ścieżka katalogu, w którym był zainstalowany WordPress. W sekcji New Settings znajdują się analogiczne dane dla nowego serwera. W większości przypadków pola te będą już wypełnione, więc musimy się tylko upewnić, że wszystkie informacje są poprawne.

W sekcji New Admin Account możemy utworzyć nowe konto administratora. Jeśli konto, które próbujemy stworzyć, już istnieje, to nie zostanie ono nadpisane ani usunięte.

Przejdźmy do sekcji ustawień zaawansowanych (Advanced settings). Na liście Scan Tables znajdują się wszystkie zaimportowane do bazy danych tabele. Jeśli mamy pewność, że któreś z nich nie zawierają adresów URL serwisu (na przykład tabele, które nie mają nic wspólnego z naszą stroną), to możemy je wykluczyć ze skanowania.

Lista Activate Plugins zawiera listę wtyczek znajdujących się w paczce instalacyjnej. Domyślnie wszystkie te rozszerzenia zostaną aktywowane, ale możemy aktywować tylko wybrane z nich.

Opcja Enable Full Search włącza pełne skanowanie tabel w bazie danych. Domyślnie instalator skanuje i modyfikuje ścieżki i adresy URL tylko w polach typu tekstowego (co w znacznej większości przypadków jest wystarczające). Pełne skanowanie powoduje, że pod uwagę brane są również pola innych typów, co znacznie spowalnia cały proces.

Na koniec została nam opcja Keep Post GUID unchanged?. GUID to unikalny identyfikator wpisu, który ogólnie rzecz biorąc nie powinien się nigdy zmienić. Opcję tę należy włączyć tylko wtedy, gdy przenosimy stronę na inny serwer bez zmiany jej adresu URL.

Kliknięcie przycisku Run Update spowoduje zaktualizowanie bazy danych naszego serwisu i zakończenie procesu instalacji paczki.

Duplicator - podsumowanie instalacji

Ostatni, trzeci krok instalacji zawiera listę kilku czynności, które musimy wykonać ręcznie. Przede wszystkim należy usunąć pliki instalatora (installer.php, installer-data.sql,installer-log.txt,installer-backup.php) i paczkę instalacyjną z serwera. Możemy to zrobić automatycznie, za pomocą narzędzia Cleanup (zostaniemy do niego przeniesieni po kliknięciu linku Security Cleanup). Następnie należy zaktualizować ustawienia linków – aby to zrobić wystarczy w panelu administracyjnym WordPressa przejść do sekcji Ustawienia → Bezpośrednie odnośniki i kliknąć przycisk Zapisz zmiany. Oczywiście nie wolno zapomnieć o przetestowaniu naszej strony, szczególnie pod kątem poprawności linków. Warto też zapoznać się z raportem z instalacji (link Review Install Report), który poza ogólnymi informacjami na temat ilości zaimportowanych i zmodyfikowanych danych, zawiera również informacje o błędach i ostrzeżeniach, jakie wystąpiły podczas instalacji paczki.

Bezpośredni link

  • Grzesiek Durtan

    Stary – świetny blog, świetne teksty, świetna prędkość tworzenia kontentu !!!!!

  • Od dawna poszukiwałem takiego mechanizmu. Swoją drogą bardzo fajna stronka. Lubię minimalistyczne rozwiązania gdzie pieprzem jest treść. Powodzenia!

  • Dobry tekst. Chętnie bym to zastosował do swojego bloga, ale tam jest WordPress 3.1, a wtyczka widzę działa od 3.4 w górę. Czas byłoby przenieść się na nowy serwer, ale już raz zawartość poszła w diabły. Może wpis dla tych, co mają starą wersję i chcę się zupdateować?

    • Można oczywiście przenieść całą stronę ręcznie (pliki i bazę danych), ale ja bym mimo wszystko sugerował aktualizację WordPressa do najnowszej wersji.

  • Maciek

    Trzeba tylko pamiętać o tym, że są serwery, które obsługują takiego rodzaju wtyczki (nie tylko Duplicator) – w jedną stronę. Tzn. można zrobić duplikat z Localhosta lub innego serwera na serwer docelowy i wszystko będzie działać, ale na tym koniec. Z serwera docelowego już nie zrobimy kolejnej „paczki”. Przykładem takiego serwera jest home.pl, po wielu godzinach prób i rozmów z supportem, nie potrafili wytłumaczyć dlaczego tak się dzieje (logi błędów nie wykazują błędów). Kontaktowałem się z supportem Duplicatora i dałem im dostęp administracyjny do serwera, po kilku godzinach też nie mogli doszukać się przyczyny… Nie jest to tylko kwestia Duplicatora ale kilku innych wtyczek tego typu, oraz usługi płatnej ManegeWP.com – klonowanie nie działa (backup tak). Warto sprawdzić swój serwer zanim zacznie się polegać na tej metodzie – a trudno sobie bez niej wyobrazić funkcjonowanie przy zarządzaniu wieloma stronami na Wordpressie.

    • mzt

      mam właśnie problem z tym w home.pl. Oba serwery są w home i za nic nie mogę tego przenieść. jakis inny sprawdzony sposób?

      • Zawsze można przenieść stronę „ręcznie” – pliki przez FTP, bazę danych za pomoca phpMyAdmina (jest dostępny na praktycznie każdym serwerze).

    • kk102

      DOBRE WIEŚCI dla użytkowników home.pl: wersja developerska Duplicator’a 0.5.3 (dostępa tu: http://downloads.wordpress.org/plugin/duplicator.zip) bezproblemowo wykonuje pakiety. Serwis dla, którego to sprawdzałem ma ok. 180MB. Paczka tworzy się 2-3 min i ma wynikowy rozmiar ok. 80MB, łącznie z bazą danych. Oczywiście trzeba pamiętać, żeby domena serwisu była przekierowana na serwer home.pl z wyłączeniem opcji „separacji serwisów” (ang. no service separation).

  • Daniel K.

    Super blog. Bardzo pożyteczne porady!

  • maly

    mam pytanie a jak przeniesc cala witryne wraz z domena z hostingu x na hosting y?

    • O tym właśnie jest ten tekst. ;)
      Jeśli chodzi o przenoszenie domeny, to wygląda to różnie w zależności od firmy hostingowej i rejestratora domeny.

  • Bożena

    Najpełniejsza informacja o wtyczce Duplicator na jaką trafiłam. Mam jednak pytanie bo u mnie nie ma funkcji Duplicator-Dashboard (pierwszy obrazek) , a jest u góry Duplicator-Packages i dodatkowy przycisk BULK ACTOONS oraz zamiast pięciu przycisków mam tylko cztery – czy to wynika z innej wersji wtyczki ? Ostatecznie utworzyły mi się oba pliki ( Installer i Package) , które pobrałam i zapisałam na dysku, jest w wynikach dodatkowa linijka „Notes: No notes were given for this package ” – czy traktując Duplicator tylko jako narzedzie do backupu mogę uznać na tym etapie czynności za zakończone (kopie zapasowe ) ? A może do regularnego robienia kopii zapasowych powinnam użyć innej wtyczki ?Jestem laikiem w temacie i to moja pierwsza styczność z wordpressem, z góry dziękuję za wyjaśnienia .

    • Różnica w zrzutach ekranu wynika oczywiście ze starszej wersji wtyczki, która była użyta do przygotowania opisu. Staram się na bieżąco takie rzeczy uaktualniać, ale nie zawsze nadążam. ;)

      Oczywiście można używać Duplicatora do tworzenia kopii zapasowych, ale wygodniejsze będzie używanie do tego celu dedykowanych wtyczek (np. BackWPup – https://wpzen.pl/backwpup-prosty-sposob-na-kopie-bezpieczenstwa-wordpressa/ ).

      • Bożena

        dziękuję za wyjaśnienia :)

  • Olimpia Davies

    Witam , mam pytanie, czy przyjmuje pan zlecenia przeniesienia danych z istniejącego już bloga na nową domenę?

  • Piotr

    A co w sytuacji gdy zmieniam serwer ale nie domenę? Do czasu aktualizacji DNS nie będę wiedział czy przenosiny się udały. Jakiś etap przejściowy? :) A strona i Twoje porady istotnie są świetne.

  • Maciek

    Witam czy Miałeś okazję przenosić przy pomocy tej wtyczki stronę na serwery nazwy? Paczka i installer.php pięknie się zrobiły wgrałem je do katalogu na nowym serwerze stworzyłem w nazwie nową bazę danych i po mimo podania adresu nazwy bazy i hasła cały czas wyrzuca błąd : Server Connected: Fail Database Found: Fail czy miał byś może jakieś sugestie ?

    • O ile mnie pamięć nie myli, w Nazwa.pl masz możliwość utworzenia bazy MySQL w wersji 5.0 i 5.5. Z jakiegoś powodu z wersją 5.5 są problemy – utwórz bazę w wersji 5.0 i spróbuj ponownie.

      • Maciek

        Winien Ci jestem szlachetny Panie wagę Twą w złocie… Furczy aż miło wielkie dzięki za pomoc

      • datablogPL

        Witam,

        Mam palący problem, bo właśnie dostałem fakturę, której kwota mnie lekko przeraziła. Otóż rok temu wykupiłem hosting, do którego kilka miesięcy później dokupiłem domenę, pod którą dziś prowadzę swoją stronę. Za trzy tygodnie ważność pierwszej usługi (serwer) się kończy (domena będzie ważna jeszcze kilka miesięcy), a kwota, którą zażądał home.pl jest w moim mniemaniu zbyt wysoka. Za tę samą usługę płaciłem w ubiegłym roku trzy razy mniej. Stąd moje pytanie: Czy jest możliwość, by przenieść zawartość serwisu (oparłem go o CMS WordPressa) wraz z domeną do niego podpiętą na inny serwer? Czy opisywane przez Ciebie powyżej narzędzie sprawdzi się w tej sytuacji?

        • Tak to jest z promocjami w firmach hostingowych. ;)

          Oczywiście, że da się przenieść serwis na inny serwer. To narzędzie właśnie do tego służy.

          • datablogPL

            Mądry Polak po szkodzie.:)
            Ale czy nie będzie problemu z podpięciem domeny pod inny serwer? I co wtedy, gdy serwis będzie istniał de facto na dwóch serwerach jednocześnie, które będą podpięte pod jedną domenę (chcę przenosić w najbliższych dniach, więc usługa obecnego serwera będzie jeszcze przez jakiś czas aktywna). I czy nie będzie problemu ze skrzynkami e-mail, podpiętymi pod tę usługę?
            Jeśli zatem w moim przypadku nie ma problemu z przeniesieniem serwisu na inny serwer, to wychodzi na to, że można wiecznie korzystać z promocji.;)
            Wiem, że dla ludzi znających się na rzeczy moje pytania mogą być śmieszne, ale jestem zielony w tych kwestiach.:)

          • Domena może być podpięta tylko do jednego serwera. Konta e-mail będziesz musiał założyć od nowa na nowym serwerze i przenieść na nie pocztę ze starych kont.

            Oczywiście, że przenosząc co określony czas stronę na nowy serwer możesz wiecznie korzystać z promocji. ;) Rzecz w tym, że większości ludzi nie chce się tego robić.

  • Ania

    Bardzo pomocne, dzięki!

  • Sebastian

    Witam

    Co może być przyczyną, że na dysk nie pobiera się plik installer.php ?

  • ankrr

    a ja nie mogę przejść przez scan. Wywala mi komunikat
    Server Status:
    200 -OK
    Error Message:
    RuntimeException thrown
    DirectoryIterator::__construct(/home/xu191869/public_html/gimnazjum/wp-content/plugins/duplicator/classes) [directoryiterator.–construct]: failed to open dir: Too many open files

    Co robię źle?

  • raf

    Niestety troszke zmienili wyglad ustawien w nowej wersji.. Ladniejszy interface nie zawsze oznacza bardziej funkcjonalny ;/

  • Kelevra

    Witam,

    mam problem (chyba) natury technicznej. Zainstalowałem wtyczkę, postąpiłem wg. Pana instrukcji (delikatnie musiałem zmodyfikować kroki w związku z innym interfacem nowej wersji). Wszystko teoretycznie jest ok, skanowanie wypada pomyślnie ALE jedyne co duplikuje to bazę danych, zakładka Archive ma 0B. Sprawdziłem w opcjach, checkboxy NIE SĄ zaznaczone (Checked tables will not be added to the database script.), ale mimo to nic nie kopiuje. Co może powodować ten błąd?

    • kk102

      Też miałem ten problem. U mnie powodem było ustawienie konfiguracji domeny stronki z tzw. „service separation”. Trzeba ustawić domenę bez „service serparation” i ten problem u mnie zniknął.

  • Mateusz Korsak

    hej, prawie się udało :) Jednakże ostatecznie wtyczka nie chciała skopiowac wszystkich plików, więc przeniosłem ręcznie, ale przydała się do dump-a bazy.

    Jedyny problem jaki mam, to, że pozmieniało mi linki do zdjęć dodając dwa razy nazwe katalogu np. nazwa/nazwa/wp-content/uploads/2014/10/DSC_0004.jpg, w związku z tym zdjęcia się nie wyświetlają we wpisach.

    Macie jakis pomysł dlaczego lub gdzie to zmienić?

  • Aja zastanawiam się kiedy przepiąć domenę?

    • Domenę możesz przepiąć po przeniesieniu wszystkiego na docelowy serwer i sprawdzeniu, czy wszystko działa.

      • Co mogłem zrobić nie tak. Wrzuciłem pliki na serwer jak pisałeś, ale gdy wpisałem adres http://nowa-domena.pl/installer.php czyli http://angielskawymowa.pl/installer.php to pokazała mi się informacja, że nie znaleziono strony :(

        • Jesteś pewien, że wrzuciłeś plik installer.php na ten serwer? Poza tym widzę, że pod adresem angielskawymowa.pl masz już jakąś stronę.

          • Tak, wrzuciłem. Sprawdziłem jeszcze raz.

            Tak jest już blog, bo cche go przenieść na inny serwer. Dlatego się pytałem kiedy zmienić dns.Może niedokłądnie.

          • Na serwerze podpiętym do domeny angielskawymowa.pl nie ma pliku installer.php i to jest akurat pewne.

            A tak poza tym, to chyba czegoś nie rozumiem… Skoro chcesz przenieść stronę angielskawymowa.pl na inny serwer, to dlaczego próbujesz wrzucić kopię tej strony na ten sam serwer? Jesteś pewien, że dobrze przemyślałeś cały proces? ;)

          • W tej chwili stronę mam na serwerze netmark. Zrobiłem kopię za pomoca duplicatora i pliki wraz z instalatorem wrzuciłem na drugi serwer mydevil.

            Potem wpisałem adres do instalacji ale tak jak mi się wydawało wywaliło błąd. Więc podejrzewam, że powinienem adresy dns przed tym skierować na nowy serwer. Prawda?

          • No tak, bo w tej chwili domena wskazuje na „stary” serwer. ;)

            Możesz również na czas testów dopisać domenę z nowym adresem IP do pliku ‚hosts’ na swoim komputerze – dzięki temu na Twoim komputerze nowy serwer będzie widoczny pod tą domeną. Poszukaj w Google jak to zrobić – to nic trudnego.

  • Danger

    Jak zwykle kawał dobrej pracy!!! Prosty, czytelny i dla każdego.
    Jest to mój ulubiony blog jeśli chodzi o porady z WP.
    Oby tak dalej !!!

  • guttka

    Świetna, po prostu świetna. Nie wiem, jak to zrobiłam (nie jestem specem;) ), a jednak udało się, dziękuję bardzo!

  • Szymon

    dość nietypowe pytanie, straciłem plik installer, mam wyłącznie zachowaną paczkę. Niestety nie uda mi się już dostać do poprzedniego serwera (było to jakiś czas temu). Czy za pomocą paczki i bez installera jest jakakolwiek możliwość postawienia strony na innym serwerze?

    • Wygeneruj sobie nową paczkę (obojętnie gdzie, nawet na lokalnie zainstalowanym WordPressie), pobierz plik installer.php i pozmieniaj w nim wszystkie parametry na odpowiadające Twojej paczce (tej bez instalatora). Jeśli niczego nie przeoczysz, to powinno to zadziałać.

  • dgdfdf

    Nie działa niestety. Znaczy działa ale tylko trochę ponieważ nie podmienia adresów slidera, stopke całą rozwaliło, obrazy w stopce nie działają. Beznadziejna wtyczka.

  • Radosław Rossa

    Witam. Myślałem, że te rady rozwiążą mi sprawę przeniesienia WP jednak nic z tego przynajmniej w moim przypadku. Zrobiłem backup strony przy pomocy wymienionej wyżej wtyczki, wrzuciłem paczkę a raczej jej zawartość na serwer wybieram: http://www.mojadomena.pl/installer.php i enter i nic aię nie dzieje instalka nie rusza. Nie wiem co dalej w tym począć…. Ma może ktoś jakiś pomysł?

  • Cześć! Świetny wpis. A ja mam pytanie, jak to zrobić teraz :) Czy wpis jest „w miarę” aktualny?

    • Wpis jest w miarę aktualny, aczkolwiek interfejs wtyczki zmienił się trochę. Mam w planach aktualizację wpisu, ale żadnego terminu nie jestem w stanie podać.

  • Stare piosenki o głównym :) Dzięki za aktualizację

  • Pawel

    Bardzo fajna sprawa, właśnie przetestowałem, zastanawiam się tylko czy akeeba backup nie jest jednak prostszym rozszerzeniem? ma auto-konfigurator i właściwie wszystko dzieje się kilkoma kliknięciami, akeeba też jest darmowa (istnieje tez wersja pro), nikt tu nie wspomina o akeebie dlatego zastanawiam się czy jest tak mało popularna czy tylko ja jej używam.

    • Szczerze mówiąc nigdy wcześniej nie słyszałem o tej wtyczce, więc trudno mi się na jej temat wypowiedzieć.

      • Pawel

        Proszę spróbować to bardzo popularne i od lat cenione narzędzie wśród joomlowców, jakiś czas temu powstała wersja dla wordpressa, działa wyśmienicie, tworzona jest paczka wraz z bazą danych etc. paczkę wgrywa się na serwer wraz z małym plikiem kickstart.php którym to rozpakowujemy pliki, później uruchamiamy instalatora który jest w tej paczce i właściwie tyle wszystko robi się automatycznie. Może kiedyś jakiś wpis na ten temat ? myślę że zainteresował by tym pan wielu użytkowników. Pozdrawiam

  • Adam Adamowsky

    Witaj. Super przygotowana instrukcja. Lepszej chyba w sieci nie znajdziemy. Czy masz doświadczenie z pozycjonowaniem strony? Co sie dzieje w momencie, gdy chce wygasic stara wersje strony i w jej miejsce przeniesc nowa, ktora przygotowana jest na tym samym serwerze, ale pod innym adresem? Jak zachowa sie wyszukiwarka google? Czy pozycjonowanie zacznie sie od nowa? Z gory dzieki za odpowiedź. Pozdrawiam

    • Twoje pytanie nie ma wiele wspólnego z tematem tego wpisu. ;)
      Jest ono natomiast szalenie popularne, wiele osób je zadaje i odpowiedź znajdziesz bez problemu w Google.

      • Adam Adamowsky

        Wiem i dlatego dzięki za odpowiedź. Postaram sie pogrzebać w google.

  • Mirek Kozłowski

    Trochę sceptycznie myślałem o Duplicatorze bo do tej pory wszystko robiłem ręcznie, ewentualnie instalacja wp za pomocą autoinstallatora (np. w nazwa.pl były jaja z uruchomieniem instalacji WP ręcznie ;)) i wczytanie contentu za pomocą importu xml, ale mimo wszystko zawsze było coś co nie działało i co trzeba było poprawiać. A tu Duplicator wszystko machnął szybko i bezproblemowo. Tak poza tematem czy Ty jesteś z byłej ekipy //W ?

    • Tak, wiele lat temu współtworzyłem //w. Dziwię się, że ktoś to jeszcze pamięta. ;)

  • Mariusz P.

    Fajna wtyczka, ale znam lepszą – All-in-One WP Migration

    • Dziękuję za bardzo rzeczowy komentarz. Byłoby jednak miło gdybyś zdradził nam, dlaczego uważasz tę wtyczkę za lepszą.

  • Micek

    Ok a co z multisite Czy jest jakaś metoda na migracje wp multisite bezboleśnie. Niestety przy próbie przenoszenia na nowy serwer dostaje wciąż błąd połączenia z bazą. Wszelkie urle podmienione ale i tak nic z tego.

    • Błąd połączenia z bazą nie ma nic wspólnego z multisite, tylko z danymi (login, hasło, nazwa bazy), które podałeś przy instalacji.

  • Łukasz
  • Michał Pakosz

    Witam,
    Jako kompletny laik przebrnąłem przez cały proces przenoszenia strony z serwera lokalnego na zewnętrzny (home.pl). Niestety pojawia się błąd z którym nie mogę sobie poradzić. Czy plik config mogę edytować w notatniku? Co zmienić?
    Proszę o pomoc….

    Pozdrawiam

    • Z wklejonego przez Ciebie screena wynika dokładnie co powinieneś sprawdzić i zrobić.

      Nie powinieneś edytować plików .php za pomocą Notatnika, ponieważ zapisuje on pliki z BOM, co powoduje problemy. Skorzystaj z jakiegoś edytora kodu, np. Notepad++.

  • MadMixer

    Rozumiem, że za pomocą tej wtyczki można stworzyć taka wersję instalacyjną z wtyczkami i wstępnymi ustawieniami do szybkiej instalacji „jednym” kliknięciem. Czy może się mylę?

  • michał

    Jak chce otworzyć skrypt installer.php, to wyskakuje 404 Not found

    • Jesteś pewien, że wrzuciłeś installer.php we właściwe miejsce na serwerze?

  • Wielkie dzięki, właśnie skorzystałem z Twojego poradnika! Oszczędziłeś mi masę pracy, czapka z głowy :)!

  • Aguado

    Użyłem wtyczki i udało mi się przenieść treść z localhost z kompa na serwer i tu zonk… Nie mogę otworzyć strony na localhost. Na szczęście mogę pracować na serwerze, ale wyraźnie coś nie wyszło. Przed duplikowaniem skopiowałem cały katalog wordpress z bitnami i spróbowałem podmienić go potem, ale nie działa, tak jakby zmiany były wyżej. Boję się, że jak przeniosę z serwera na inny, to znów coś nie wyjdzie.

    Nie mogę też zaktualizować wtyczek na serwerze. Pojawia się przy każdej (tuaj akurat All In One Seo) taki komunikat:

    Warning: unlink(C:Bitnamiwordpress/apps/wordpress/tmp/all-in-one-seo-pack.2.3.6.1-5aqhjR.tmp) [function.unlink]: No such file or directory in /home/abcdef/domains/ghijklmn.pl/public_html/wp-admin/includes/file.php on line 493
    Wystąpił błąd przy aktualizacji All in One SEO Pack: Pobieranie nie powiodło się. Katalog docelowy przesyłania strumieniowego nie istnieje lub nie ma uprawnień do zapisu do niego.

    abcdef – to user a ghijklmn – to nazwa domeny. Wyraźnie chce zapisywać w starym katalogu na kompie, a pliki są już na serwerze.

    Czy ktoś ma jakieś rozwiązanie?

  • Marek Najkowski

    Czy jest jakaś alternatywa dla tej wtyczki. Przy jednym przenoszeniu wszystko było ok. Natomiast w innym przypadku w paczce są tylko pliki bazy. W sekcji „Name checks” wyskakuje mi ostrzeżenie ale gdy chce sprawdzić ścieżki które je wywołują widoczne jest tylko „DIR 0: []”

  • Natan

    Super artykuł, to dzięki niemu poznałem wtyczkę Duplicator

    lecz teraz mam problem z przeniesieniem postawionej strony z serwera w internecie na serwer lokalny (localhost).
    Do przenoszenia stron pomiędzy hostingami zawsze używam tej wtyczki i samo przenoszenie stron z jednego hostingu na drugi nie sprawia problemu…:)
    Jednak kiedy probuję przenieść stronę na serwer lokalny (postawiony na XAMPP) pojawia mi się problem:

    Root Directory: Fail
    Path: /Applications/XAMPP/xamppfiles/htdocs/mps
    [Fail] Is Writable by PHP
    [Pass] Contains only one zip file
    Result = 20160817_mps_57b4109807f4f9533160817072200_archive.zip
    Note: Manual extraction still requires the archive.zip file

    Tworzyłem bazę danych w phpmyadmin dla tej ścieżki i nic to nie daje…
    w phpmyadmin w kontach użytkownika root ma „wszystkie przywileje” wiec powinno być ok, a ciagle jest Fail.
    I już nie wiem co robić…

    Jeśli ktoś ma jakieś sugestie dotyczące rozwiązania problemu to liczę na pomoc:)

  • Natan

    Super artykuł, to dzięki niemu poznałem wtyczkę Duplicator

    lecz teraz mam problem z przeniesieniem postawionej strony z serwera w internecie na serwer lokalny (localhost).
    Do przenoszenia stron pomiędzy hostingami zawsze używam tej wtyczki i samo przenoszenie stron z jednego hostingu na drugi nie sprawia problemu…:)
    Jednak kiedy probuję przenieść stronę na serwer lokalny (postawiony na XAMPP) pojawia mi się problem:

    Root Directory: Fail
    Path: /Applications/XAMPP/xamppfiles/htdocs/mps
    [Fail] Is Writable by PHP
    [Pass] Contains only one zip file
    Result = 20160817_mps_57b4109807f4f9533160817072200_archive.zip
    Note: Manual extraction still requires the archive.zip file

    Tworzyłem bazę danych w phpmyadmin dla tej ścieżki i nic to nie daje…
    w phpmyadmin w kontach użytkownika root ma „wszystkie przywileje” wiec powinno być ok, a ciagle jest Fail.
    I już nie wiem co robić…

    Jeśli ktoś ma jakieś sugestie dotyczące rozwiązania problemu to liczę na pomoc:)

    • Komunikat mówi wyraźnie, że PHP nie ma prawa zapisu do katalogu /Applications/XAMPP/xamppfiles/htdocs/mps.

      • Natan

        Jakaś wskazówka dotycząca tego gdzie mogę zmienić prawa dostępu/zapisu? :)
        Będę wdzięczny, bo walczę z tym od rana… ;P
        Z góry dzięki!

  • Jacek

    Witam serdecznie,
    Bardzo fajna strona – przydatna dla takiego początkującego, jak ja. Mam pytanie – czy ktoś pomoże mi i poda, jakie tabele z bazy danych mam odhaczyć, jeśli chciałbym przenieść cały serwis prócz tagów, wpisów i użytkowników?

    Z góry dziękuję.

    Pozdrawiam

    • Tabele musisz przenieść tak czy inaczej, ponieważ bez nich WordPress przestanie działać. Możesz po przeniesieniu strony na drugi serwer wyczyścić ich zawartość, ale nie polecam robić tego ręcznie, tylko za pomocą panelu administracyjnego.

      • Jacek

        Dzięki za odpowiedź.
        Czyli jeśli sklonuję cały serwis to mogę później bez większych konsekwencji skasować niepotrzebną zawartość?
        Mową o około 40 wpisach, kilkunastu użytkownikach, 50 tagach itp.
        Czy usuwanie takiej ilości danych nie robi rozgardiaszu w bazie danych? Chodzi mi o ewentualne „pozostałości”. Jak już pisałem, jestem nowy w temacie i nie wiem, czy WP jest odporny na takie usuwanie? Czy może lepiej pomęczyć się i stworzyć nową instalkę? Dopowiem tylko, że tam jest tyle konfiguracji itp. że zapewne męczyłbym się z tym ze 4 lub 5 wieczorów…

        Z góry dzięki za odpowiedź
        Pozdrawiam

        • Jeśli usuniesz te dane przez panel administracyjny, to wszystko będzie w porządku, szczególnie, że tych treści do usunięcia nie masz zbyt wiele.

  • Robert

    Genialny blog. Wszystko świetnie, prosto i jasno opisane. Zmarnowałem prawie tydzień czasu czytając inne tego typu blogi i korzystając z narzędzi, które nie działały. Po czym leżąc dzisiaj rano w łóżku całkowicie zrezygnowany, trafiłem na Twojego bloga. Przeczytałem i po godzinie moja strona śmiga jak ta lala. :) Ja Tobie daję nagrodę Nobla. Pozdrawiam Serdecznie.

  • Tylko Duplicator <3

  • Kamil

    Witajcie, utknąłem na uruchomieniu instalatora, ktoś pomoże??

  • Piotr

    Dzięki za świetny poradnik! Udało mi się przenieść dzięki niemu moją stronę na xamppa. Strona po przeniesieniu działa ale, niestety nie mogę dostać się do panelu administracyjnego. Na oryginalnej stronie programista zmienił adres logowania do panelu i dodatkowo zabezpieczył logowanie przez recaptcha.
    Teraz na localhost przy próbie logowania zamiast obrazka recaptcha dostaję informację „Localhost nie należy już do domen obsługiwanych przez ten klucz witryny” Co mogę zrobić?