Dedinčan odporúča...

Lazarus logoLazarus je grafické rozhranie k FreePascal (Nástroj pre rýchly vývoj aplikácii – RAD – Rapid Application Development), a slúži pre vývoj ako grafických, tak i konzolových aplikácií v programovacom jazyku Object Pascal.

Migrácia 1.5 na 1.7

Kategória: Návody
Upravené: pondelok, 5. september 2011

Už nejakú dobu tu je Joomla 1.7 a ja som sa rozhodol vyskúšať ako to vyzerá s migráciou so stránky s verziou 1.5. Už teraz môžem prezradiť, že to nie je zložité, ale...

Príprava migrácie

Začnite tým, že stiahnete a nainštalujete komponent JUpgrade. Jeho inštaláciu tu popisovať nebudem, pretože predpokladám, že inštalovať rozšírenia do Joomly viete, len pripomeniem aby ste si nainštalovali poslednú, teda najnovšiu, verziu komponentu.

Komponent JUpgrade vyžaduje na správnu funkčnosť novú verziu MooTools, takže v Správcovi zásuvných modulov skontrolujte, že máte zapnutý (povolený) zásuvný modul „System - Mootools Upgrade".

Na obrázku vidíte, že zásuvný modul je zakázaný. Jednoducho kliknite myšou na červený krížik aby ste ho povolili. To, či je modul povolený je vidno aj v stránke komponentu, ktorá správne vyzerá nejako takto:

Ak na začiatku stránky uvidíte upozornenie v štýle:

Mootools 1.2 not loaded. Please enable "System - Mootools Upgrade" plugin.

tak zásuvný modul povolený nie je.

Odstránenie pokusov

Ak ste už robili pokusy s predchádzajúcou verziou JUpgrade, vrelo odporúčam starú verziu odinštalovať, hoci to nie je povinný krok, ale výrazne uľahčí vyprázdňovanie tabuliek. Po jeho odinštalovaní prejdite do správcu svojej databázy (odporúčam phpMyAdmin), kde odstráňte všetky tabuľky, ktorých meno začína na „j16_” alebo „j17_” a tiež tabuľky, ktorých meno obsahuje „jupgrade”. Staršie verzie komponentu JUpgrade používali tabuľky:

  • j16_jupgrade_categories
  • j16_jupgrade_menus
  • j16_jupgrade_modules
  • j16_jupgrade_steps

Nová verzia už pre nich nepoužíva predponu „j16”.

Potom vymažte staré adresáre a súbory, ktoré JUpgrade vytvára, teda adresár /jupgrade a súbory /tmp/joomla17.zip (prípadne /tmp/joomla16.zip) a /tmp/size.tmp. Prvý spomínaný obsahuje stiahnutý archív Joomly a druhý používa komponent na overenie aktuálnosti stiahnutého archívu.

Nastavenie migrácie

V stránke komponentu JUpgrade je v paneli nástrojov tlačidlo nastavení, ktoré otvára vyskakovacie okno s nastaveniami.

Ako sami vidíte, veľa toho na nastavenie nie je, ale predsa. Nezabudnite zvoliť správnu verziu Joomla a ak používate inú predponu tabuliek ako je predvolené „jos_”, tak to nezabudnite zmeniť. Ako môžete sami na obrázku vidieť, preskakujem kopírovanie šablón a rozšírení, ktoré nie sú súčasťou Joomly. Je to preto, že i tak väčšina z nich v noevj verzii nefunguje.

Voľby „Preskočiť sťahovanie” a „Preskočiť rozbaľovanie” sú užitočné pri opakovaní migrácie, voľba „Povoliť ladenie” je zase užitočná pri problémoch.

Po uložení nových nastavení nezabudnite znova načítať obsah stránky, najlepšie prejdením na inú stránku a znova vojdením do stránky JUpgrade. Môžete skúsiť aj stlačiť F5 (alebo obdobnú klávesovú skratku), či použiť tlačidlo „Späť” v paneli nástrojov.

Migrácia

Po nastavení možno spustiť samotnú migráciu kliknutím na to jedno obrovské tlačidlo, ktoré má nápis „ZAČAŤ AKTUALIZÁCIU". Môžme diskutovať, či je tento názov tlačidla správny, každopádne komponent začne postupne vykonávať jeden krok za druhým a v okne prehliadače bude zobrazovať priebeh. Osobne považujem spôsob indikácie priebehu za menej šťastný, ale to je jedno. Aby ste získali prehľad, uvádzam tu aj obrázok so všetkými dokončenými krokmi.

Samotná migrácia nejaký čas zaberie. Hoci to nikde nepíšu, nie je vhodné počas jej behu zatvoriť okno prehliadača a lepšie iste bude keď sa v prehliadači ani neprepnete na iné ono.

Sami môžete vidieť, že v poslednom okienku sú odkazy na stránku i administráciu novej verzie vašej stránky. Môžete na nich kliknúť a prihlásiť sa svojimi prihlasovacími údajmi. Ak budete chcieť k svojej stránke pristupovať neskôr, nájdete ju v podadresári, ktorý je nastavený v nastavení JUpgrade (predvolene jupgrade).

Problémy

Pri migrácii

Pri migrácii som narazil len na jeden problém so set_time_limit, ktorý je pravdepodobne spôsobený nastavením môho hostingu:

Warning: set_time_limit() has been disabled for security reasons in /home/html/slavino.sk/public_html/administrator/components/com_jupgrade/includes/jupgrade.class.php on line 51

Takže som zakomentoval riadky okolo riadku 51 v spomenutom súbore a všetko fungovalo:

        // Set timelimit to 0
/*
        if(ini_get('safe_mode') == false) {
            set_time_limit(0);
        }
*/

Po migrácii

Problémy postupne odhaľujem a dopĺňam...

V novej verzii stránky som narazil na problémov viac. Ani jeden z nich sa však netýkal základnej funkčnosti zobrazenia. Ako prvé, čo som si všimol bolo, že moje hlavné menu bolo premigrované dva krát, čo však považujem len za kozmetický problém. Samozrejme mnoho odkazov v menu nefungovalo, pretože sú to odkazy na komponenty, ktoré ešte nainštalované nie sú.

Za väčší problém však považujem nenastavené práva k článkom, čo spôsobuje že právo meniť články má len Super Administrátor. Riešenie tohoto problému je síce jednoduché, ale pracné – musíte totiž manuálne preklikať všetky dotknuté kategórie a články, ktoré treba otvoriť. Robil som rôzne pokusy s prebudovaním stránky, ale bez úspechu. teda jedno riešenie som našiel ale to vydá na samostatný článok.

Migrátor mi tiež premigroval všetky komponenty, moduly i zásuvné moduly (hoci som zvolil abyich nemigroval), ktoré sa nedajú z rozhrania stránky odinštalovať. Zásuvné moduly možno odstrániť z databázy pomocou:

DELETE FROM `joomdb15`.`j17_extensions` WHERE `type` = "plugin" AND `folder` = ""

S modulmi a komponentmi je to horšie, pretožo som nezistil ako ich jednoznačne identifikovať, preto pomôže len manuálne mazať z databázy (tabuľka j17_extensions). Každopádne, tento problémy vyrieši export databázy bez tejto tabuľky a import do novej inštalácie.

Export stránky

Ako som už spomenul, komponent JUpgrade migruje do podadresára aktuálnej stránky a tabuľky vkladá do rovnakej databázy, čo nie je veľmi efektné riešenie. Ak chcete dostať obsah na celkom samostatnú stránku stačí však exportovať (skoro) všetky tabuľky, ktoré začínajú na „j17” do súboru SQL (napríklad pomocou phpMyAdmin), tam si prispôsobiť predponu mien tabuliek, teda nahradiť predponu „j17” tou, ktorú používate a naimportovať do samostatnej stránky.

Spomenul som, že skoro všetky tabuľky, ja som napríklad neexportoval tieto:

  • j16_extensions
  • j16_languages
  • j16_template_styles

Nezabudnite tiež popresúvať všetky potrebné súbory.

Copyright © 2008 - 2012 Sprievodca dedinčana... Niektoré práva vyhradené.
Ak nie je uvedené inak, obsah podlieha licencii „Creative Commons Uveďte autora – Zachovajte licenciu 3.0 Unported

Nenasledovať tento odkaz, inak budete maž zakázaný prístup na stránku!