Migrácia WordPress webovej stránky

Občas potrebujete presunúť WordPress webovú stránku na iný server a preto vám prinášame tento osvedčený bezpečný postup ako pri presune zachovať starý web a nič pritom nepokaziť. Ešte jednoduchšie riešenie ponúkajú moduly spísané na konci.

Pred tým ako vôbec začnete s migráciou by som vám chcel povedať pár slov o vlastnej predpone tabuliek, ktorú môžete zadefinovať vo wp-config.php. Je dobré nenechávať to na predefinovanej hodnote “wp_”, ale zvoliť si pre každý web vlastnú predponu (len čísla a malé písmená!, napr. mojwebtest_), aby sa vám nestalo, že si omylom prepíšete nejaké existujúce dáta. Máte už existujúcu databázu a chceli by ste predponu ešte zmeniť? Žiaden problém.

  1. Vytvorte zálohu všetkých tabuliek v databáze, ktoré používa vaša webová stránka. Na ich export môžete využiť hodne rozšírený phpMyAdmin alebo môj obľúbený Adminer (poprípade desktopové aplikácie HeidiSQL či Sequel Pro ak ste na Mac OS X). Štandardne ako výstup dostanete .sql, ale môžete si kľudne vybrať aj nejaký komprimovaný formát. Niektoré webhostingy majú nižšie limity na maximálnu veľkosť nahrávaného (importovaného) súboru a toto vám môže pomôcť neprekročiť stanovenú kvótu.
  2. Zálohujte adresár wp-content. Je už na vás či použijete svojho obľúbeného FTP klienta (WinSCP, FileZilla, Cyberduck…) alebo máte aj prístup cez SSH (tar -pvczf wp-content.tar.gz wp-content/), čo môže byť oveľa elegantnejšie riešenie.
  3. Naimportujte databázu na nový server. Ak máte už nahodený WordPress, môžete kľudne použiť spomínaný Adminer modul.
  4. Nahrajte súbor searchreplacedb2.php (WordPress (and others) Search and Replace Tool) do koreňového adresára vášho webu (tam kde sa nachádza aj wp-config.php). Tento nástroj slúži na prepísanie všetkých výskytov starej domény tou novou vo vašej databáze. Dôvod prečo používame tento skript a jednoducho neprepíšeme doménu ručne je jeho schopnosť pracovať aj so serializovanými dátami. Ak máte obavy o bezpečnosť tejto procedúry, môžete ju vykonať lokálne alebo na testovacom serveri a nie na produkčnej stránke. Tento a nasledujúci krok môžete vynechať, ak neplánujete meniť doménu.
  5. Nechajte si načítať adresu http://www.vasastranka.sk/searchreplacedb2.php. Skript si vie automaticky natiahnuť údaje, ktoré ste pre databázu zadefinovali vo wp-config.php, ak sa tam už WordPress nachádza. Stlačte “Next”, vyberte tabuľky, ktoré chcete modifikovať a na ďalšej stránke zadefinujte starú a novú doménu. Uistite sa, že ste tieto URL adresy zadali bez koncového lomítka! (správne = http://www.vasastranka.sk | nesprávne = http://www.vasastranka.sk/). Po nahradení starej domény novou, nezabudnite súbor vymazať zo serveru.
  6. Pri nahrávaní čisto novej inštalácie už len nahrajte WordPress spolu s vašim vlastným wp-content priečinkom a klasicky nastavte wp-config.php. Ak tam máte už funkčnú webovú stránku pokračujte s krokmi nižšie.
  7. Priečinok wp-content premenujte na niečo iné, napríklad wp-content.novy a nahrajte do toho istého adresára ako pôvodný wp-content.
  8. Otvorte súbor wp-config.php a nájdite riadok, ktorý začína s $table_prefix a zakomentujte ho. Priamo pod ním vytvorte presne taký istý riadok, akúrat zmeňte predponu tabuliek na vami zadefinovanú. Bude to vyzerať nejak takto:
    // $table_prefix  = 'wp_';
    $table_prefix = 'mojwebtest_';

    Uložte.

  9. Premenujte pôvodný wp-content na wp-content.stary a práve nahraný wp-content.novy na wp-content.
  10. Skontrolujte vašu webovú stránku, či všetko funguje ako má. Pri nejakej komplikácii len zakomentujete novú predponu pre tabuľky databázy a odstránite zakomentovanie na tej pôvodnej vo wp-config.php. Premenujete oba priečinky wp-content naspäť ako boli a všetko vám zase pôjde ako pred tým.
  11. Ak nebol žiadny problém prihláste sa do ovládacieho panelu a v Nastavenia > Trvalé odkazy stlačte “Uložiť zmeny” dva krát za sebou. Toto zaistí, že vám bude fungovať správne vaša štruktúra trvalých odkazov a všetky URL adresy stránky. Potom sa ešte uistite, že máte v Nastavenia > Súkromie povolené indexovanie obsahu vyhľadávacími službami.

V prípade, že chcete len zmeniť doménu alebo URL adresu webu a stále používať tú istú databázu a ostať na tom istom serveri (presunúť do iného adresáru), stačí urobiť nasledovné kroky:

  1. Nezabudnite na kompletnú zálohu (súbory+databáza).
  2. Choďte do Nastavenia > Všeobecné a zmeňte  Adresa WordPress (URL) a Adresa serveru (URL) na vami požadovanú novú doménu alebo umiestnenie. Nezabudnite tieto nastavenie uložiť.
  3. (Nesnažte sa teraz znovu otvoriť/načítať vašu webovú stránku alebo jej administráciu!)
  4. Presuňte/skopírujte všetky súbory (vrátane .htaccess) do novej lokácie.
  5. Váš web by mal byť už teraz prístupný. Prvú vec čo by ste mali urobiť je ísť do Nastavenia > Trvalé odkazy a stlačiť “Uložiť zmeny” dva krát za sebou.
  6. Existujúce multimédiá (obrázky…) budú napriek tomu stále odkazovať na staré adresy. Opraviť to môžete pomocou modulu Velvet Blues Update URLs alebo ich nájsť a nahradiť s už spomínaným nástrojom.
  7. V Nastavenia > Multimédiá si skontrolujte cestu k priečinku pre nahrávanie. (Neaktuálne od verzie 3.5.)
  8. Ak používate vlastné menu a máte tam položku, ktorá odkazuje na domovskú stránku, tak bude tiež pravdepodobne ešte stále obsahovať starú hodnotu.
  9. V niektorých prípadoch je treba znovu ponastavovať práva súborov.

Ďalšie moduly vytvorené k uľahčeniu tohto procesu:

Ako robíte migráciu vy? Používate na presun nejaké iné zaujímavé nástroje a moduly? Podeľte sa o ne s nami dole v komentároch.

The following two tabs change content below.

Ján Bočínec

WordPress ninja at Webikon
je ďalší člen Webikon tímu poskytujúci svoje služby pre slovenskú komunitu okolo WordPress na fóre, ale nie len na ňom ;). Nakoľko mu WordPress už veľmi prirástol k srdcu a nevie si bez neho predstaviť svoj život, rád sa s vami podelí o informácie, rady, alebo programátorské zručnosti.

Latest posts by Ján Bočínec (see all)

6 komentárov


  1. Ja len poznamenám, že po ukončení migrácie je ešte potrebné prejsť všetky widget-y, ktoré obsahujú odkazy na starú doménu a ručne ich zmeniť.

    Odpovedať

  2. migroval som wp z jedného počítača do druhého podľa horeuvedeného návodu. Nefunguje mi to. Postupoval som. Inštalacia wp na nový pc, novy wp-config, novy wp-content, doteraz to išlo, akonahle som exportoval databazu, cele to prestalo fungovat. dakujem za pomoc

    Odpovedať

  3. Dobrý podvečer, migráciu stránky som vykonal úspešne, jediný problém je, že v Nastavenia > Multimédiá nie je cesta k priečinku pre nahrávanie multimédií. Používam WP 3.5.1 SK. Bola táto funkcia odstránená, alebo je len “niekde skrytá”? Vďaka za odpoveď

    Odpovedať

Pridaj komentár