Modul 9 · 9.5
Přestěhování webu na WordPressu
Modul 9: E-mail, dohledatelnost, GDPR, údržba a přestěhování · Doba čtení: 10 minut
Cíl lekce: Po této lekci dokážete přestěhovat web na WordPressu na jiný hosting nebo na jinou doménu bez výpadku.
Klíčové pojmy: přestěhování na jiný hosting, přestěhování na jinou doménu, import přes instalátor, migrační plugin, ruční přestěhování, hledání a nahrazování, testování před přepnutím DNS, soubor hosts, TTL, zastavení úprav obsahu, poslední synchronizace, kontroly po přepnutí, změna adresy v Search Console
Dva druhy přestěhování
Existují dva druhy přestěhování a jsou odlišné:
- Na jiný hosting, stejná doména. Web se přesouvá ze serveru A na server B; adresa zůstává
https://example.com. DNS se přepíná až na konci. V databázi se nemusí nic měnit. - Na jinou doménu. Web se přesouvá z
example.comnaexample.net(na stejném nebo jiném hostingu). Mění se všechny adresy v databázi a staré doméně musíte zajistit přesměrování.
Někdy děláte obojí najednou. V takovém případě je lepší to rozdělit: nejprve přestěhovat na nový hosting, teprve potom změnit doménu. Pokud pak nastane problém, budete vědět, ve kterém kroku k němu došlo.
A nezapomeňte na to, co je kolem WordPressu: e-mail na doméně, DNS záznamy, plánované úlohy (cron), další weby ve stejném balíčku. Ty se automaticky nepřestěhují (kurz o DNS, lekce 6.3).
Tři způsoby přenesení webu
| Způsob | Jak | Na co si dát pozor |
|---|---|---|
| Import přes instalátor | Mnoho instalátorů (Installatron, Softaculous) umí stáhnout web z jiného serveru pomocí FTP nebo SFTP přihlašovacích údajů starého hostingu | Rychlé, web je pak hned k dispozici ve Vašem instalátoru (lekce 2.2) |
| Migrační plugin | Plugin na starém webu vytvoří balíček (soubory a databázi) a nahraje ho na nový web, často i s úpravou adres | Některé bezplatné verze mají omezenou maximální velikost; velké nahrávání může narazit na timeout |
| Ručně | Zkopírovat soubory (SFTP nebo zip), exportovat a importovat databázi, upravit wp-config.php, u nové domény hledat a nahrazovat | Nejvíce práce, ale vidíte každý krok a vždy to funguje |
Ruční postup vypadá takto:
- Soubory: stáhněte celý webový adresář (nebo z něj vytvořte zip ve Správci souborů) a nahrajte ho do webového adresáře na novém hostingu.
- Databáze: exportujte ji na starém hostingu (phpMyAdmin nebo
wp db export), na novém vytvořte prázdnou databázi s vlastním uživatelem (lekce 2.3) a importujte ji (lekce 8.2). - wp-config.php: uveďte v něm nový název databáze, uživatele, heslo a host. Zkontrolujte předponu tabulek.
- Nová doména? Vyhledejte a nahraďte adresy pomocí nástroje, který rozumí serializovaným datům (lekce 3.2):
wp search-replace 'https://example.com' 'https://example.net' --all-tables --dry-run
wp search-replace 'https://example.com' 'https://example.net' --all-tables- Certifikát na novém hostingu (jakmile se přepne DNS, nebo dříve, pokud to hoster umožňuje).
Někteří hostingoví poskytovatelé Vám web přestěhují zdarma nebo za poplatek; WebOké tuto službu rovněž nabízí. Zeptejte se, které z kroků z této lekce udělají oni a které si musíte zkontrolovat sami.
Testování před přepnutím DNS
Nejdůležitější zásada přestěhování bez výpadku: nový web funguje ještě předtím, než na něj začnou chodit návštěvníci. Testujete ho na novém hostingu, zatímco DNS stále ukazuje na starý. Dva způsoby (lekce 2.1):
- Soubor hosts na Vašem počítači: zadejte do něj IP adresu nového serveru u Vaší domény. Na nový web se pak dostane pouze Váš počítač. Certifikát tam někdy ještě nemusí být; upozornění akceptujte pouze pro účely tohoto testu.
- Testovací adresu nebo náhled od nového poskytovatele hostingu, který zobrazí Váš web pod skutečnou doménou, aniž by bylo nutné měnit DNS (u WebOké „Otestovat web před přestěhováním“).
Projděte si kontrolní seznam z lekce 8.2: stránky, obrázky, přihlašování, formuláře, obchod, trvalé odkazy.
Naplánování přepnutí
Několik dní předem:
- Snižte TTL záznamů, které budete měnit (A, AAAA, www), například na 300 sekund, aby bylo přepnutí poté rychle vidět všude (kurz o DNS, lekce 6.1). Udělejte to minimálně o délku staré TTL dříve.
- Vytvořte zálohu starého webu (lekce 8.1) a uložte ji mimo oba hostingy.
- Připravte e-mail, pokud se také stěhuje: vytvořit schránky, přenést poštu, připravit MX záznamy (kurz o DNS, lekce 6.3).
V den přepnutí:
- Zastavení úprav obsahu: od této chvíle se na starém webu už nic nemění. U e-shopu: vyberte klidnou chvíli a dočasně přepněte obchod do režimu údržby, jinak Vám na starém webu přijdou objednávky, o které přijdete.
- Poslední synchronizace: ještě jednou přeneste databázi (a nové nahrané soubory) ze starého webu na nový, aby byly zahrnuty i změny z posledních dnů.
- Přepnutí DNS: A a AAAA záznam (i www) na novou IP adresu. Odstraňte starý AAAA záznam, pokud existuje (lekce 2.1).
- Vyžádání certifikátu na novém hostingu, jakmile se DNS přepne.
- Kontrola pomocí úkolu z této lekce a kontrolního seznamu.
Poté:
- Ponechte starý hosting ještě pár dní funkční (s webem v režimu údržby nebo jen pro čtení), pro návštěvníky, kteří mají starou adresu stále v mezipaměti, a jako záložní řešení.
- Zkontrolujte trvalé odkazy (jedno uložení v Nastavení > Trvalé odkazy, pokud stránky vrací 404), cache (vyprázdnit), plánované úlohy (cron) a WP-Cron (lekce 6.3) a e-mail odesílaný z webu (lekce 9.1, SPF musí nyní uvádět nový server).
- Nastavte TTL opět na vyšší hodnotu.
- Teprve po týdnu až dvou: zrušte starý hosting, poté co jste si stáhli ještě jednu poslední zálohu.
Při změně domény: přesměrování
Pokud se stěhujete na jinou doménu, musí stará doména zůstat zachovaná a přesměrovávat: každá stará adresa pomocí 301 na stejnou cestu na nové doméně (https://example.com/contact/ na https://example.net/contact/), ne vše na domovskou stránku. Tím si zachováte návštěvníky ze starých odkazů i svou pozici ve vyhledávačích (lekce 9.2).
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?example\.com$ [NC]
RewriteRule ^(.*)$ https://example.net/$1 [R=301,L]Starou doménu (a certifikát na ní) ponechte ještě roky. Přestěhování nahlaste v nástroji Google Search Console pomocí funkce pro změnu adresy a zadejte novou mapu webu (sitemap).
Shrnutí
- Přestěhování na jiný hosting (stejná doména) a na jinou doménu jsou odlišné úkoly; pokud děláte obojí, rozdělte je.
- Přeneste web pomocí importu přes instalátor, migračního pluginu nebo ručně (soubory, databáze, wp-config.php, u nové domény hledání a nahrazování).
- Otestujte nový web před přepnutím DNS pomocí souboru hosts nebo testovací adresy.
- Předem snižte TTL, zastavte úpravy obsahu, naposledy synchronizujte, přepněte DNS a zkontrolujte trvalé odkazy, cache, cron a e-mail.
- U nové domény: každá stará adresa pomocí 301 na stejnou cestu na nové doméně, a změna adresy v Search Console.
Kvíz
Úkol
Úkol A9.5: Povedlo se stěhování? Po přestěhování zadáte svou doménu, IP adresu (nebo název serveru) nového hostingu a při změně domény i starou doménu. Program zkontroluje: zda doména bez www a www (A a AAAA) ukazují na nový server, zda je certifikát platný pro obě jména, zda REST odkaz webu ukazuje na správnou doménu (siteurl správně přepsán), zda se stará doména již neobjevuje v odkazech a zdrojích na domovské stránce, a zda stará doména (pokud je zadaná) přesměrovává pomocí 301 na stejnou cestu na nové doméně.
Úkol D9.5: Váš plán přestěhování. Napište si scénář pro přestěhování vlastního webu (i když to momentálně neplánujete): jaký druh přestěhování, jaký způsob přenosu, co je potřeba přesunout kromě WordPressu (e-mail, DNS záznamy, plánované úlohy), jak budete testovat před přepnutím, časovou osu (dny předem, samotný den, dny poté) s tím, kdo dělá který krok, a jak se vrátit zpět, pokud se něco pokazí. Zaškrtněte, že jste si vyhledali aktuální TTL svého A záznamu, a zapište si ji.
Úkol D9.5: Váš plán přestěhování
Tento úkol provádíte sami; nikdo ho nekontroluje. Odškrtněte, co jste udělali, a označte úkol jako splněný.
Několik dní předem snižte TTL, domluvte zastavení obsahu s poslední synchronizací těsně před přepnutím a nezapomeňte na e-mail a ostatní DNS záznamy.
Vaše zaškrtnutí a poznámky zůstávají pouze v tomto prohlížeči; nikam je neposíláme. Pokud jste přihlášeni, ukládáme v sekci Moje kurzy pouze to, že jste úkol splnili.
Další čtení
Tyto články popisují kroky v ovládacích panelech WebOké; v jiných panelech fungují obdobně.
- Import skriptu do Installatronu
- Příručka k DirectAdmin 13.4: Import existujícího webu do Installatronu
- Moje webová stránka nefunguje po nahrání nebo přesunu
- Přesun domény, webu a e-mailu společně bez výpadku: podrobný postup
- Příručka k DirectAdmin 18.8: Testování webových stránek před přesunem domény
- Příručka WebOké 14.2: Otestovat si web před přestěhováním
- Příručka k DirectAdmin 12.4: Export databáze
- Bezplatný DNS kurz 6.3: DNS při převodu domény
- Přestěhování WordPressu (developer.wordpress.org, anglicky): https://developer.wordpress.org/advanced-administration/upgrade/migrating/
