Modul 8 · 8.3
Slovenčina
Staging: bezpečné testovanie
Modul 8: Zálohy, testovacie prostredie a aktualizácie PHP · Čas čítania: 9 minút
Cieľ lekcie: Po tejto lekcii dokážete vytvoriť testovacie prostredie (staging), zabezpečiť ho a bezpečne preniesť zmeny späť na svoju skutočnú stránku.
Kľúčové pojmy: staging, produkcia, klonovanie, subdoména, noindex, heslo na priečinku, vypnutý e-mail, platobná brána v testovacom režime, synchronizácia, prepísanie databázy, lokálne vývojové prostredie
Čo je staging
Testovacie prostredie (staging) je kópia vašej skutočnej stránky na vlastnej adrese, kde skúšate zmeny. Vaša skutočná stránka sa vtedy nazýva produkcia. Na stagingu sa môže niečo pokaziť: nová téma, veľká aktualizácia, aktualizácia PHP (lekcia 8.4), nový plugin. Až keď to funguje, zmenu vykonáte aj na produkcii.
Staging využijete pri zmenách s rizikom: veľké verzie WordPressu alebo pluginu pre e-shop, iná téma, aktualizácia PHP, upratovanie pluginov (lekcia 5.4), redizajn. Pri textovej zmene alebo menšej aktualizácii pluginu to nie je potrebné.
Spôsoby vytvorenia stagingu
| Spôsob | Ako | Pre koho |
|---|---|---|
| Funkcia klonovania vo vašom inštalátore | V Installatrone „Kopírovať“ s voľbou „Create a staging site“, v Softaculous „Create Staging“, v WP Toolkite „Clone“ | Najjednoduchšia cesta, ak bola vaša stránka vytvorená cez inštalátor |
| Staging od vášho hostera | Pri spravovanom WordPress hostingu často jedným tlačidlom | Ak to váš hoster ponúka |
| Plugin na staging | Plugin vytvorí kópiu v podpriečinku alebo na subdoméne | Ak nemáte inštalátor ani funkciu od hostera |
| Ručne | Obnoviť zálohu vedľa stránky (lekcia 8.2) a upraviť adresy | Poučné a vždy možné |
| Lokálne na vlastnom počítači | Program na lokálny vývoj WordPressu alebo Docker prostredie | Pre vývojárov a väčšie úpravy |
Staging na subdoméne (staging.example.com) je väčšinou lepší ako v podpriečinku (example.com/staging): správa sa viac ako vaša skutočná stránka a cookies a pravidlá v .htaccess sa navzájom nemiešajú. Subdoménu si najprv vytvorte, s certifikátom.
Zabezpečenie: tri veci, ktoré vyriešite hneď
Kópia vašej stránky je plnohodnotná stránka so všetkým vaším obsahom, niekedy aj so všetkými údajmi zákazníkov. Preto hneď zariaďte:
1. Preč od vyhľadávačov
Bez ochrany môže Google váš staging nájsť a indexovať. Potom máte duplicitný obsah a používatelia vyhľadávania sa dostanú na vašu testovaciu stránku. Urobte aspoň jedno, najlepšie oboje z tohto:
- Heslo na celý staging (basic authentication cez váš hostingový panel, „zabezpečený priečinok“). Stránku potom nevidí nikto bez hesla, ani vyhľadávače. Toto je najsilnejšie opatrenie.
- Odrádzanie vyhľadávačov v Nastavenia > Čítanie (lekcia 2.4). Tým sa na každú stránku nastaví
noindex. Vyhľadávače to väčšinou rešpektujú, ale ide o žiadosť, nie zámok.
Pozor na opačný prípad: ak staging neskôr synchronizujete späť na produkciu, neprenášajte pritom začiarknuté políčko noindex. Produkčná stránka, ktorá po „úspešnej“ synchronizácii zmizne z Google, je klasický prípad. Úloha k tejto lekcii kontroluje oboje.
2. Žiadny e-mail skutočným ľuďom
Kópia e-shopu alebo členskej stránky môže posielať e-maily: potvrdenia, pripomienky, newslettre, odkazy na zmenu hesla. Zákazníci potom dostanú mätúce e-maily z vašej testovacej stránky. Vypnite odosielanie e-mailov na stagingu alebo ho presmerujte na vlastnú adresu (pomocou pluginu na zachytávanie e-mailov, alebo vypnutím SMTP pluginu na stagingu, lekcia 9.1). Vypnite tiež naplánované úlohy, ktoré posielajú e-maily.
3. Platby a prepojenia v testovacom režime
E-shop na stagingu by mal fungovať s testovacím režimom platobnej brány, nie so skutočnými platbami. Ostatné prepojenia (účtovníctvo, sklad, CRM) vypnite alebo prepnite na testovacie prostredie, inak dostanú testovacie objednávky ako skutočné.
Ak na stagingu pracujete so skutočnými údajmi zákazníkov, platí tam rovnako GDPR (lekcia 9.3): neuchovávajte ich dlhšie, ako je potrebné, a staging po skončení odstráňte.
Späť na produkciu: nástraha databázy
Najťažší krok je prenesenie vašich zmien späť na produkciu. Inštalátory a staging pluginy na to majú funkciu (v Installatrone „Synch“, inde „Push to live“). Riziko:
- V pondelok vytvoríte staging. Od utorka do štvrtka testujete novú tému.
- Medzitým na produkcii pribudne dvadsať objednávok, tri nové články a päťdesiat komentárov.
- V piatok synchronizujete databázu zo stagingu na produkciu. Databáza stagingu je však z pondelka: objednávky, články a komentáre od utorka do piatku sú preč.
Preto:
- Najprv si zálohujte produkciu (lekcia 8.1), tesne pred synchronizáciou.
- Synchronizujte len to, čo je potrebné. Aktualizácia témy alebo pluginu je záležitosťou súborov; databázu vtedy často netreba prenášať. Mnohé synchronizačné funkcie vám umožnia vybrať: len súbory, alebo len určité tabuľky.
- Pri e-shope alebo vyťaženej stránke: zmenu radšej vykonajte znova priamo na produkcii (rovnaké kroky ako na stagingu, teraz už viete, že fungujú) namiesto prenesenia databázy. Alebo si naplánujte pokojnejší moment s krátkym zastavením obchodu.
- Následne skontrolujte produkciu: kontrolný zoznam z lekcie 8.2 a začiarknutie noindex.
Staging je miesto, kde sa naučíte, čo sa stane. Samotnú zmenu je najbezpečnejšie vykonať na produkcii znova.
Upratovanie
Staging, ktorý zostane stáť mesiace, sa stane zabudnutou stránkou: neaktualizovanou, so starými pluginmi a skutočnými údajmi. Presne to je slabé miesto z lekcie 7.1. Po skončení staging odstráňte, alebo ho udržiavajte ako plnohodnotnú stránku (aktualizácie, heslo). Klon zaberá rovnako veľa miesta ako originál a má vlastnú databázu.
Zhrnutie
- Staging je kópia vašej stránky na vlastnej adrese na testovanie rizikových zmien.
- Vytvoríte ho cez inštalátor, hostera, plugin alebo ručne, najlepšie na subdoméne s certifikátom.
- Hneď ho zabezpečte: heslo a/alebo noindex, žiadny e-mail skutočným ľuďom, platby v testovacom režime.
- Nesynchronizujte naslepo späť: databáza stagingu prepíše to, čo pribudlo na produkcii. Najprv zálohujte, prenášajte len to potrebné, alebo zmenu vykonajte znova.
- Po skončení staging odstráňte a nepreneste začiarknutie noindex na produkciu.
Kvíz
Úloha
Úloha A8.3: Je váš staging zabezpečený? Vyplňte adresu svojho stagingu (subdoménu vlastnej domény, napríklad z úlohy D8.2) a adresu svojej skutočnej stránky. Overovacím kódom úlohy preukážte, že doména je vaša. Program skontroluje na stagingu: odpovedá cez https a je zabezpečený (výzva na zadanie hesla, alebo noindex v HTML či v hlavičke X-Robots-Tag)? Smeruje REST odkaz (wp-json) na samotný staging a nie na vašu skutočnú stránku? A na vašej skutočnej stránke: nie je tam noindex?
Ďalšie čítanie
Tieto články popisujú kroky v paneloch WebOké; v iných paneloch fungujú podobne.
