Modul 8 · 8.3
Testno okolje (staging): varno testiranje
Modul 8: Varnostne kopije, testno okolje (staging) in nadgradnje PHP · Čas branja: 9 minut
Učni cilj: Po tej lekciji boste znali ustvariti testno okolje (staging), ga zaščititi in spremembe varno prenesti nazaj na Vaše pravo spletno mesto.
Ključni pojmi: testno okolje (staging), produkcija, kloniranje, subdomena, noindex, geslo na mapi, izklop pošte, ponudnik plačil v testnem načinu, sinhronizacija, prepis podatkovne baze, lokalno razvojno okolje
Kaj je testno okolje (staging)
Testno okolje (staging) (ali testno spletno mesto) je kopija Vašega pravega spletnega mesta na lastnem naslovu, kjer preizkušate spremembe. Vaše pravo spletno mesto se takrat imenuje produkcija. V testnem okolju lahko gre kaj narobe: nova tema, večja posodobitev, nadgradnja PHP (lekcija 8.4), nov vtičnik. Šele ko deluje, spremembo izvedete na produkciji.
Testno okolje uporabljate za spremembe s tveganjem: večje različice WordPressa ali vtičnika za spletno trgovino, drugo temo, nadgradnjo PHP, čiščenje vtičnikov (lekcija 5.4), prenovo oblikovanja. Za besedilno spremembo ali manjšo posodobitev vtičnika to ni potrebno.
Načini za ustvarjanje testnega okolja
| Način | Kako | Za koga |
|---|---|---|
| Funkcija kloniranja Vašega namestitvenega orodja | Pri Installatronu »Kopiraj« z možnostjo »Create a staging site«, pri Softaculousu »Create Staging«, pri WP Toolkitu »Clone« | Najlažja pot, če je bilo Vaše spletno mesto ustvarjeno z namestitvenim orodjem |
| Testno okolje Vašega ponudnika gostovanja | Pri upravljanem gostovanju za WordPress pogosto en sam gumb | Če Vaš ponudnik gostovanja to omogoča |
| Vtičnik za testno okolje | Vtičnik ustvari kopijo v podmapi ali na subdomeni | Če nimate namestitvenega orodja ali funkcije ponudnika gostovanja |
| Ročno | Obnovitev varnostne kopije poleg spletnega mesta (lekcija 8.2) in prilagoditev naslovov | Poučno in vedno mogoče |
| Lokalno na Vašem računalniku | Program za lokalni razvoj WordPressa ali okolje Docker | Za razvijalce in večje prilagoditve |
Testno okolje na subdomeni (staging.example.com) je običajno boljše kot v podmapi (example.com/staging): obnaša se bolj podobno Vašemu pravemu spletnemu mestu, piškotki in pravila v datoteki .htaccess pa se med seboj ne mešajo. Subdomeno ustvarite najprej, s certifikatom.
Zaščita: tri stvari, ki jih uredite takoj
Kopija Vašega spletnega mesta je polnopravno spletno mesto z vso Vašo vsebino, včasih tudi z vsemi podatki strank. Zato takoj uredite:
1. Zaščita pred iskalniki
Brez zaščite lahko Google Vaše testno okolje najde in indeksira. Potem imate podvojeno vsebino, obiskovalci iskanja pa pristanejo na Vašem testnem spletnem mestu. Naredite vsaj enega, raje oba od naslednjih korakov:
- Geslo na celotnem testnem okolju (osnovno preverjanje pristnosti prek Vaše nadzorne plošče gostovanja, »zaščitena mapa«). Tako spletnega mesta brez gesla ne vidi nihče, niti iskalniki ne. To je najmočnejša zaščita.
- Odsvetovanje iskalnikom v Nastavitve > Branje (lekcija 2.4). To na vsako stran namesti oznako
noindex. Iskalniki to večinoma upoštevajo, vendar gre za prošnjo, ne za ključavnico.
Pazite na obratno situacijo: če testno okolje kasneje sinhronizirate nazaj na produkcijo, ne prenesite kljukice noindex. Produkcijsko spletno mesto, ki po »uspešni« sinhronizaciji izgine iz Googla, je klasičen primer. Naloga te lekcije preveri oboje.
2. Brez pošte pravim ljudem
Kopija spletne trgovine ali spletnega mesta za člane lahko pošilja pošto: potrditve, opomnike, novičnike, povezave za ponastavitev gesla. Stranke potem prejmejo zmedena sporočila z Vašega testnega spletnega mesta. Izklopite odhodno pošto na testnem okolju ali jo preusmerite na Vaš lastni naslov (z vtičnikom za prestrezanje pošte ali z izklopom vtičnika SMTP na testnem okolju, lekcija 9.1). Izklopite tudi načrtovana opravila, ki pošiljajo pošto.
3. Plačila in povezave v testnem načinu
Spletna trgovina v testnem okolju naj deluje s testnim načinom ponudnika plačil, ne z resničnimi plačili. Druge povezave (računovodstvo, zaloge, CRM) izklopite ali preusmerite na testno okolje, sicer bodo testna naročila obravnavali kot prava.
Če na testnem okolju delate z resničnimi podatki strank, tam velja GDPR na enak način (lekcija 9.3): ne hranite jih dlje, kot je potrebno, in testno okolje odstranite, ko ste končali.
Nazaj na produkcijo: past podatkovne baze
Najtežji korak je prenos Vaših sprememb nazaj na produkcijo. Namestitvena orodja in vtičniki za testno okolje imajo za to funkcijo (pri Installatronu »Synch«, pri drugih »Push to live«). Tveganje:
- V ponedeljek ustvarite testno okolje. Od torka do četrtka preizkušate novo temo.
- Medtem na produkciji prispe dvajset naročil, trije novi prispevki in petdeset komentarjev.
- V petek sinhronizirate podatkovno bazo iz testnega okolja na produkcijo. Podatkovna baza testnega okolja je tista iz ponedeljka: naročila, prispevki in komentarji od torka do petka so izgubljeni.
Zato:
- Najprej naredite varnostno kopijo produkcije (lekcija 8.1), tik pred sinhronizacijo.
- Sinhronizirajte le tisto, kar je potrebno. Posodobitev teme ali vtičnika je zadeva datotek; podatkovne baze pogosto ni treba prenesti. Veliko funkcij sinhronizacije omogoča izbiro: samo datoteke ali samo določene tabele.
- Pri spletni trgovini ali prometnem spletnem mestu: spremembo raje ponovno izvedite na produkciji (isti koraki kot na testnem okolju, zdaj ko veste, da delujejo), namesto da prenesete podatkovno bazo. Ali pa načrtujte mirnejši trenutek s kratkim zaprtjem trgovine.
- Nato preverite produkcijo: kontrolni seznam iz lekcije 8.2 in kljukico noindex.
Testno okolje je prostor za učenje, kaj se zgodi. Samo spremembo je najvarneje ponovno izvesti na produkciji.
Čiščenje
Testno okolje, ki ostane mesece, postane pozabljeno spletno mesto: ne posodobljeno, s starimi vtičniki in resničnimi podatki. Ravno šibka točka iz lekcije 7.1. Odstranite testno okolje, ko ste končali, ali ga vzdržujte kot polnopravno spletno mesto (posodobitve, geslo). Klon zavzame enako prostora kot original in ima lastno podatkovno bazo.
Povzetek
- Testno okolje (staging) je kopija Vašega spletnega mesta na lastnem naslovu za testiranje tveganih sprememb.
- Ustvarite ga z namestitvenim orodjem, ponudnikom gostovanja, vtičnikom ali ročno, raje na subdomeni s certifikatom.
- Takoj ga zaščitite: geslo in/ali noindex, brez pošte pravim ljudem, plačila v testnem načinu.
- Ne sinhronizirajte nazaj brez premisleka: podatkovna baza testnega okolja prepiše vse, kar je prišlo na produkcijo. Najprej naredite varnostno kopijo, prenesite le tisto, kar je potrebno, ali spremembo izvedite ponovno.
- Odstranite testno okolje, ko ste končali, in ne prenesite kljukice noindex na produkcijo.
Kviz
Naloga
Naloga A8.3: Je Vaše testno okolje (staging) zaščiteno? Vnesite naslov Vašega testnega okolja (subdomena Vaše lastne domene, na primer iz naloge D8.2) in Vašega pravega spletnega mesta. S kodo naloge dokažite, da je domena Vaša. Program preveri na testnem okolju: ali odgovarja prek https in ali je zaščiteno (zahteva po geslu ali noindex v HTML ali v glavi X-Robots-Tag)? Ali povezava REST (wp-json) kaže na samo testno okolje in ne na Vaše pravo spletno mesto? In na Vašem pravem spletnem mestu: tam ne sme biti noindex?
Dodatno branje
Ti članki opisujejo korake v nadzornih ploščah WebOké; v drugih nadzornih ploščah delujejo podobno.
