--=REKLAMA=--
Ten przewodnik poprowadzi Cię krok po kroku przez procedury migracji z Joomla 1.5 do nowszych wersji, takich jak Joomla 2.5 lub 3.x. Aby uniknąć niepotrzebnych frustracji, prosimy przed przystąpieniem do migracji zapoznać się z całym poniższym poradnikiem, ponieważ migracja nie jest łatwym przedsięwzięciem.
Jeśli posiadasz witrynę utworzoną w Joomla 1.5, rozważ pilnie migrację do najnowszego wydania Joomla 2.5 albo Joomla 3.x.
Joomla 1.5 nie jest już wspierany od końca roku 2012. Oznacza to, że nie zostaną już wydane żadne łatki aktualizujące, nawet jeśli zostaną wykryte luki w bezpieczeństwe. Na forach użytkowników coraz częściej pojawiają się alarmujące posty o problemach z logowaniem się do witryn w wersji 1.5. Zwykle okazuje się, że witryny zostały uszkodzone przez internetowych napastników.
Joomla 2.5 to wersja stabilna, oparta na wcześniejszych wersjach rozwojowych oznaczonych numerami 1.6 i 1.7. Bliskość numeracji wydań - 1.5 i 1.6 (czy nawet 2.5) - może wprowadzać w błąd. Prace nad tą nową wersją Joomla trwały 3 lata. Było to wielkie i poważne przedsięwzięcie. Wolontariusze z całego świata poświęcili niezliczone godziny pracy, by złożyć wszystko w spójną całość. Choć większość kodu pochodzi z Joomla! 1.5, to został on przepisany od podstaw, a zmiany można porównać do tych, jakie nastąpiły podczas przejścia z Joomla! 1.0 na Joomla! 1.5.
Ponieważ zmiany w Joomla! 2.5 w porównaniu z 1.5 są bardzo duże, nie istnieje prosty sposób automatycznej aktualizacji oprogramowania, konieczna jest migracja. W przyszłych wydaniach Joomla przejście do wyższej wersji będzie prostsze - planowany jest sposób aktualizacji oparty na rdzennym instalatorze Joomla!.
Migracja witryny z Joomla 1.5 do Joomla 2.5 lub 3.x nie należy do zadań łatwych, prostych i przyjemnych. Wręcz przeciwnie - często niesie za sobą różne problemy. Nie znaczy to bynajmniej, że potrzeba specjalnych kwalifikacji informatycznych, by sobie z nimi poradzić.
O uproszczenie procesu migracji zadbali programiści. W centralnym Katalogu Rozszerzeń Joomla znajdziemy kilka rozszerzeń, które mogą posłużyć do przeprowadzenia migracji, w tym zarówno bezpłatnych, jak i komercyjnych:
Dla zastosowań profesjonalnych warto rozważyć wykorzystanie rozwiązań komercyjnych. Każde z nich ma swoje walory. Jeśli jednak stajesz przed koniecznością migracji jednej czy kilku swoich witryn, Twoje potrzeby z powodzeniem zaspokoi jedno z dwu wyśmienitych rozszerzeń - jUpgrade albo jego nowsze i bogatsze wcielenie, również bezpłatne jUpgradePro - można je pobrać także tutaj.
Rozwój komponentu jUpgrade stworzonego przez Matiasa Aguirre został wsparty przez wielu programistów z całego świata. Od kilku już lat udoskonalony komponent bardzo dobrze sprawdza się w działaniu. A że wszystko może być doskonalsze, niż jest, projektant zdecydował się na nowe wcielenie rozszerzenia i wydali je pod zmienioną nazwą jUpgradePro.
Oba komponenty służą do migracji witryn zbudowanych w Joomla 1.5 do nowszych wersji. Ale różnią się dość istotnie.
Komponent jUpgrade jest rozszerzeniem dla Joomla 1.5. Zapewnia nam:
Wersja 2.5.2 komponentu jUpgrade obsługuje migrację następujących 37 rozszerzeń: AceSEF, Acymailing, AdminPraise, AdminTools, Adsmanager, AiContactSafe, AkeebaBackup, AllEvents, AmbraSubs, Akeeba Release System, AvReloaded, BreezingForms, Comment, CommunityBuilder, Contact Enhanced, CSV Improved, DocMan, FlexiContent, FlippingBook, HikaShop, Highslide JS Config, JCE, JComments, JEvents, JoomComment, JomSocial, JUMI, Kunena, K2, redForm, redMEMBER, redSHOP, redTextLibrary, RSGallery2, SobiPro, Virtuemart, Xmap.
Komponent jUpgradePro oprócz możliwości oferowanych przez jUpgrade, zapewnia dodatkowo;
Komponent jUpgradePro wymaga do migracji innych rozszerzeń zainstalowania dodatków dostępnych tylko w subskrypcji. Ogółem dostępnych jest 27 rozszerzeń za 25 dolarów: Acesef, Acymailing, Adminpraise, Admintools, Aicontactsafe, Akeeba, Allevents, Ambrasubs, Breezingforms, Comment, Community, Comprofiler, Contact_enhanced Flexicontent, Hsconfig, Jce, Jcomments, Jevents, Jumi, K2, Kunena, Phocadownload, redFORM, redMEMBER, redSHOP, Rsgallery2, Sobipro, Virtuemart, Virtuemart to redSHOP).
jUpgrade jest rozszerzeniem dla Joomla 1.5. Po uruchomieniu komponent instaluje i konfiguruje w subdomienie jupgrade (nazwę można zmienić) Joomla 2.5 i migruje do niego dane. Komponent obsługuje tylko jedną metodę migracji. Nie jest łatwy w obsłudze dla początkujących.
jUpgradePro jest rozszerzeniem dla Joomla 2.5 i 3.x. Instalujemy go w świeżej instalacji Joomla 2.5 lub Joomla 3.0 (bez przykładowych danych - to bardzo ważne!), natomiast w Joomla 1.5 instalujemy i konfigurujemy dodatek (włączony do paczki instalacyjnej rozszerzenia), który umożliwia komponentowi zainstalowanemu w Joomla 2.5/3.x odczytanie danych i ich migrację.
jUpgradePro udostępnia dwie metody migracji. Jedną, stosowaną w jUpgrade, oznaczoną jako metodę bazy danych oraz nową nazwaną metodą RESTfull.
Metoda RESTfull jest usługą sieciową. Aby przeprowadzić migrację, nie musisz podawać informacji do połączenia z bazą danych - podajesz jedynie adres starej witryny oraz nazwę i hasło superużytkownika. JUpgradePro jest dla początkujących łatwiejszy w obsłudze, ponieważ nie wymaga żadnych dodatkowych operacji związanych z przemieszczaniem plików przeniesionej witryny i porządkowaniem bazy danych.
Proszę, bardzo proszę, uchroń siebie (i prawdopodobnie swoich klientów) od bólu głowy i upewnij się, że Twój serwer (a w przypadku JUpgrade także Twoja przeglądarka) nadają się do wykonania tego zadania. Zapoznaj się z [wymaganiami Joomla! 2.5 - 3.x]. Zapoznaj się także z wymaganiami jUpgrade (PHP v5.2.4+, IIS/Windows: MySQL v5.1 - Linux/Apache: MySQL v5.0.4+, włączony w PHP moduł Curl, zainstalowany w Joomla wyższym niż 1.5.19, przeglądarka obsługująca Javascript/jQuery).
Przed rozpoczęciem sprawdź i przemyśl kilka kwestii:
Ominięcie tego kroku to największy błąd, jaki możesz popełnić. Jeśli masz odpowiednią kopię zapasową (lub kilka), zawsze możesz wrócić do poprzedniej wersji. Ale gdy nie masz kopii zapasowej, a coś pójdzie nie tak, stracisz dużo cennego czasu, a niekiedy i pieniędzy, by powrócić do poprzedniego stanu. Wykonaj zatem kopię swojej witryny.
Zapasową kopię witryny bardzo łatwo można wykonać za pomocą komponentu AkeebaBackup.
Akeeba Backup tworzy pliki archiwum w formacie JPA, ale można go skonfigurować również tak, by tworzył archiwum w formacie ZIP (niezalecane).
Pliki archiwum stworzone przez Akeeba Backup zawierają kopię systemu plików witryny oraz bazy danych, a także swój własny instalator, działający podobnie, jak instalator Joomla. Dzięki temu instalatorowi łatwo odtworzymy witrynę w każdym środowisku spełniającym wymagania Joomla.
Aby rozpakować na serwerze plik JPA, potrzebny jest skrypt Kickstart.php, który również można pobrać ze strony projektanta AkeebaBackup. Szczegółową instrukcję posługiwania się AkeebaBackup znajdziesz w poradniku Kopia witryny w kilka minut.
Za pomocą XCloner można wykonać kopię zapasową całej witryny - systemu plików i bazy danych. XCloner generuje archiwa TAR, które można otworzyć za pomocą większości programów rozpakowujących archiwa.
Po utworzeniu kopii zapasowej, witrynę można łatwo przywrócić za pomocą wchodzącego w skład XCloner specjalnego skryptu przywracania.
XCloner można pobrać za darmo z http://www.xcloner.com. Strona dokumentacji XCloner znajduje się pod adresem: http://www.xcloner.com/wiki/index.php/Main_Page. Rozszerzenie przetłumaczone zostało na język polski.
Kopię witryny można również wykonać niezawodną metodą "ręczną", o czym opowiada artykuł Jak wykonać kopię witryny.
Jeśli jesteś w tym momencie poddenerwowany i Twoje serce bije szybciej, prawdopodobnie powinieneś stworzyć sobie lokalne środowisko testowe, w którym odtworzysz swoją witrynę z kopii i przeprowadzisz migrację.
Oczywiście, można przeprowadzać migrację bezpośrednio na działającym serwerze internetowym. Poza instalacją JUpgrade i umieszczeniem w systemie plików nowej instalacji Joomla, proces migracji nie powoduje żadnych zmian w dotychczasowej witrynie Joomla 1.5. Jest to zatem zabieg bezpieczny.
Po co zatem instalować lokalne środowisko testowe i w nim przeprowadzać migrację?
Co najmniej z dwóch powodów.
Po pierwsze, instalując środowisko lokalne, mogę sobie zapewnić optymalne warunki działania, nie jestem ograniczony ustawieniami serwera i uzależniony od ewentualnej pomocy technicznej, gdy coś pójdzie nie po myśli.
Po drugie, jeśli pojawią się problemy, łatwiej, a przede wszystkim szybciej będzie można sobie z nimi poradzić na lokalnym serwerze testowym, np. gdy konieczne okaże się ręczne pobranie pakietu instalacyjnego najnowszego Joomla.
Podpowiedzi, jak zainstalować lokalne środowisko testowe w swoim komputerze znajdziesz w artykule Lokalny_serwer_testowy.
Jeśli już masz lokalny serwer testowy, odtwórz na nim swoją witrynę zbudowaną na Joomla 1.5. Zależnie od sposobu wykonania kopii możesz wykorzystać w tym celu np. Kickstart, gdy kopia została sporządzona za pomocą Akeeba Backup albo narzędzi XCloner.
O odtworzeniu witryny z kopii wykonanej metodą tradycyjną przeczytaj w artykule Jak wykonać kopię witryny.
Pobierz najnowszą wersję jUpgrade z witryny www.matware.com.ar.
Przejdź na zaplecze swojej witryny Joomla! 1.5, np. localhost/twoja_witryna/administrator albo www.twoja_domena.com/administrator. Z rozwijalnego menu wybierz pozycję Rozszerzenia → Instalator.
Przejdź do sekcji Instaluj z pakietu, kliknij przycisk Przeglądaj i wskaż pobrany wcześniej pakiet instalacyjny com_jupgrade, a następnie kliknij przycisk Wczytaj plik i zainstaluj
To bardzo ważne, aby po zainstalowaniu jUpgrade sprawdzić, czy ten dodatek jest włączony. Jeśli go nie włączymy, komponent nie będzie działać poprawnie, o czym zostaniem uprzedzeni stosownym komunikatem.
Przed rozpoczęciem migracji należy skonfigurować komponent, choć zdarza się, że z domyślnymi ustawieniami opcji migracja przebiega pomyślnie. Otwórz kartę Komponenty → jUpgrade → Parametry chociażby po to, by zmienić na bezpieczniejszy domyślny przedrostek nazw tabel (j25_) dla nowej witryny. Parametry komponentu zestawiono w 5 grupach:
W grupie pierwszej zestawiono kilka opcji ogólnych (Global):
Druga grupa opcji (Skip), czyli Pomiń umożliwia pominięcie niektórych czynności, które mogą powodować przerwanie lub zawieszenie procesu migracji. Wybieramy jedną z opcji w każdym przypadku - Tak lub Nie:
Trzecia grupa opcji (Core skips) umożliwia pominięcie migracji zawartości rdzennych składników Joomla. Także i w tym zestawie w każdym przypadku zaznaczamy jedną z opcji - Tak lub Nie:
W grupie czwartej (Cleanup) pojawia się tylko jedna opcja:
W ostatniej grupie (Debug, czyli Diagnostyka) można ustawić dwa parametry:
Komponenty >> jUpgrade
Rozpocznij aktualizację
Nie opuszczaj tego ekranu dopóki wszystkie operacje nie zostaną wykonane. Przewiń ekran w dół, by sprawdzić, czy komponent zakończył działanie.
Powodzenie!!!
Jak objaśnialiśmy wcześniej, zmiany w Joomla! 2.5 w stosunku do 1.5 są znaczące. Ze względu na ten fakt tworzenie przez jUpgrade nowej instalacji Joomla! 2.5 jest, moim zdaniem, genialne. Jeśli proces migracji przebiegł w 100% pomyślnie, to Twój Joomla! 1.5 jest nadal w stanie nienaruszonym. Możesz się sam przekonać, przeglądając zaplecze i witrynę, że nic się nie zmieniło, wszystko jest, jak było. Więc co właściwie się stało? JUpgrade pobrał najnowszą wersję Joomla! 2.5 do twojego katalogu aktualizacji (który tworzy) w głównym folderze instalacyjnym Joomla! 1.5. Następnie wyodrębnia pliki z pobranego archiwum. Gdy zakończy się rozpakowywanie pakietu, jUpgrade instaluje Joomla! 2.5 i przeprowadza procedurę migracji bazy danych do nowej bazy, którą stworzył dla Joomla! 2.5. Twój Joomla! 2.5 zostanie zainstalowany w katalogu localhost/twoja_witryna/jupgrade albo www.twoja_domena.com/jupgrade, przy założeniu, że Joomla! 1.5 jest zainstalowany w głównym katalogu domeny.
Dokonaj dokładnego przeglądu swojej instalacji Joomla! 2.5 i upewnij się, że wszystko zostało poprawnie skonfigurowane.
Twój Joomla! 2.5 został zainstalowany w katalogu localhost/twoja_witryna/jupgrade albo www.twoja_domena.com/jupgrade, przy założeniu, że Joomla! 1.5 jest zainstalowany w głównym katalogu domeny.
Oto ogólna lista zmian:
Jeśli wszystko przebiegło pomyślnie, sporządź kopię zapasową swojej nowej instalacji Joomla! 2.5. Najlepiej zainstaluj Akeeba Backup i posłuż się jego narzędziami.
Wszystko, co musisz zrobić, to umieścić nową witrynę w głównym katalogu swojej domeny, w miejscu dotychczasowej witryny Joomla 1.5. Tę zaś (czyli starą witrynę) musisz albo zarchiwizować, przemieszczając do jakiegoś podkatalogu, albo po prostu usunąć, jeśli wcześniej sporządziłeś jej kopię zapasową.
Kolejne kroki zależą od tego, gdzie dokonywałeś migracji. Opiszemy tutaj wariant trudniejszy - gdy migracja była przeprowadzana bezpośrednio na serwerze wdrożeniowym.
Wiemy, że w wyniku migracji mamy:
Oto krótki przegląd zadań, które teraz stoją przed nami:
Trzeba to zrobić w takiej właśnie kolejności. W przeciwnym przypadku będziesz mieć wielki bałagan, pliki zostaną przemieszane, a niektóre nadpisane. Twój Joomla! będzie prawdopodobnie nadal działać, ale to raczej będzie bomba zegarowa czekająca na sygnał.
Zaloguj się na swój serwer do panelu klienta (np. cPanel, Plesk, itp.) lub klienta FTP, aby skorzystać z preferowanego menedżera plików. Ogólna procedura jest następująca (powinna zająć około 30 sekund, jeśli przed rozpoczęciem przejrzysz jeszcze raz informacje o kolejnych krokach):
Ta procedura ta jest opcjonalna. W wyniku migracji przy użyciu jUpgrade Twoja baza danych bardzo się rozrosła. Po zakończeniu migracji stare tabele i niektóre z nowo założonych nie są już potrzebne.
Otwórz w nowej witrynie stronę Konfiguracja globalna. Następnie wybierz kartę Serwer i zobacz w Ustawieniach bazy danych, jaki przedrostek nazw posiadają tabele nowej witryny. Wszelkie inne tabele z innym przedrostkiem można usunąć podczas kolejnych czynności czyszczących.
Nowe tabele łatwo usuniesz za pomocą popularnego programu phpMyAdmin
Strona nadal działa?
Jeśli tak, to powyższa procedura dobiegła końca.
Jeśli nie, to znaczy, że w którymś z kolejnych kroków został popełniony jakiś błąd - jakaś tabela albo nawet kilka została usunięta przypadkowo. Przywróć bazę danych i powtórz kolejne kroki.
Tworzenie takich rozszerzeń jak jUpgrade wymaga sporo czasu i wysiłku ze względu na istotne zmiany strukturalne między Joomla 1.5 i 2.5. Dodaj do tego jeszcze fakt, że dla każdej wersji Joomla 1.6beta rozszerzenie musiało być poprawiane, aby działało po wprowadzeniu kolejnych zmian. To zbyt trudne zadanie do wykonania przez jedną osobę w krótkim czasie (zwłaszcza, gdy rozszerzenie jest bezpłatne). W tym kontekście wypada powiedzieć, że nadszedł czas na kolejny krok i rozróżnienie między "mało" i "dużo". Czy korzystałeś z Joomla w ubiegłym roku? Czy jesteś podekscytowany przyszłością Joomla? Czy chcesz się przyczynić do rozwoju i okazać swą wdzięczność? Możesz włączyć się w ten projekt! Jako część społeczności Joomla! zostaliśmy wezwani do pomocy społeczności w każdy możliwy sposób. Nie musisz być mistrzem programistą, wystarczy przetestować rady z tego poradnika na stronie testowej i jeśli napotkasz jakieś błędy czy usterki, zgłoś je. Jeśli wiesz, jak je naprawić, stwórz łatkę. Jeśli jesteś mistrzem programowania, to krok na miarę Twoich możliwości.