Modul 8 · 8.3
Staging: trygg testing
Modul 8: Sikkerhetskopier, testmiljø og PHP-oppgraderinger · Lesetid: 9 minutter
Læringsmål: Etter denne leksjonen kan du lage et testmiljø (staging), skjerme det og trygt føre endringer tilbake til din virkelige nettside.
Nøkkelbegreper: testmiljø (staging), produksjon, kloning, subdomene, noindex, passord på mappen, e-post av, betalingsleverandør i testmodus, synkronisering, overskrive database, lokalt utviklingsmiljø
Hva testmiljø (staging) er
Et testmiljø (staging) er en kopi av din virkelige nettside, på en egen adresse, der du prøver ut endringer. Din virkelige nettside kalles da produksjon. På staging kan det godt gå galt: et nytt tema, en stor oppdatering, en PHP-oppgradering (leksjon 8.4), en ny utvidelse. Først når det fungerer, gjennomfører du det på produksjon.
Du bruker staging for endringer med risiko: store versjoner av WordPress eller en nettbutikk-utvidelse, et annet tema, en PHP-oppgradering, opprydding av utvidelser (leksjon 5.4), en redesign. For en tekstendring eller en liten utvidelsesoppdatering er det ikke nødvendig.
Måter å lage en staging på
| Metode | Hvordan | For hvem |
|---|---|---|
| Kloningsfunksjon i installereren din | I Installatron «Kopier» med «Create a staging site», i Softaculous «Create Staging», i WP Toolkit «Clone» | Den enkleste veien hvis nettstedet ditt er laget med en installerer |
| Staging fra ditt webhotell | Ved administrert WordPress-hosting ofte én knapp | Hvis webhotellet ditt tilbyr det |
| En staging-utvidelse | En utvidelse lager en kopi i en undermappe eller på et subdomene | Hvis du ikke har en installerer eller webhotellfunksjon |
| Manuelt | Gjenopprette en sikkerhetskopi ved siden av nettstedet (leksjon 8.2) og tilpasse adresser | Lærerikt, og alltid mulig |
| Lokalt på din egen datamaskin | Et program for lokal WordPress-utvikling eller et Docker-miljø | For utviklere og større tilpasninger |
En staging på et subdomene (staging.example.com) er vanligvis bedre enn i en undermappe (example.com/staging): det oppfører seg mer som din virkelige nettside, og informasjonskapsler og regler i .htaccess blandes ikke sammen. Opprett subdomenet først, med et sertifikat.
Skjerming: tre ting du ordner med en gang
En kopi av nettstedet ditt er et fullverdig nettsted med alt innholdet ditt, og noen ganger med alle kundeopplysningene dine. Ordne derfor straks:
1. Hold søkemotorer borte
Uten beskyttelse kan Google finne og indeksere staging-en din. Da får du duplikat innhold, og søkere havner på testsiden din. Gjør minst én, helst to av disse:
- Et passord på hele staging-en (basic authentication via kontrollpanelet ditt, en «beskyttet mappe»). Da ser ingen nettstedet uten passord, heller ikke søkemotorer. Dette er den sterkeste løsningen.
- Motvirke søkemotorer i Innstillinger > Lesing (leksjon 2.4). Det setter
noindexpå hver side. Søkemotorer respekterer dette som regel, men det er en forespørsel, ikke en lås.
Pass på det motsatte: synkroniserer du staging-en senere tilbake til produksjon, ta da ikke med deg noindex-avkrysningen. En produksjonsside som forsvinner fra Google etter en «vellykket» synkronisering, er en klassiker. Oppgaven i denne leksjonen kontrollerer begge deler.
2. Ingen e-post til virkelige mennesker
En kopi av en nettbutikk eller medlemsside kan sende e-post: bekreftelser, påminnelser, nyhetsbrev, passordlenker. Kunder får da forvirrende e-poster fra testsiden din. Slå av utgående e-post på staging, eller omdiriger den til din egen adresse (med en utvidelse for å fange opp e-post, eller ved å slå av SMTP-utvidelsen på staging, leksjon 9.1). Slå også av planlagte oppgaver som sender e-post.
3. Betalinger og koblinger i testmodus
En nettbutikk på staging bør fungere med testmodusen til betalingsleverandøren, ikke med ekte betalinger. Andre koblinger (regnskap, lager, CRM) slår du av eller setter til et testmiljø, ellers får de testbestillinger som om de var ekte.
Arbeider du med ekte kundeopplysninger på staging, gjelder GDPR der på samme måte (leksjon 9.3): ikke oppbevar lenger enn nødvendig, og slett staging-en når du er ferdig.
Tilbake til produksjon: fallgruven med databasen
Det vanskeligste steget er å føre endringene dine tilbake til produksjon. Installerere og staging-utvidelser har en funksjon for dette (i Installatron «Synch», i andre «Push to live»). Risikoen:
- Du lager en staging på mandag. Tirsdag til og med torsdag tester du et nytt tema.
- I mellomtiden kommer det tjue bestillinger, tre nye innlegg og femti kommentarer på produksjon.
- Fredag synkroniserer du databasen fra staging til produksjon. Databasen til staging er den fra mandag: bestillingene, innleggene og kommentarene fra tirsdag til og med fredag er borte.
Derfor:
- Ta først en sikkerhetskopi av produksjon (leksjon 8.1), rett før synkroniseringen.
- Synkroniser bare det som er nødvendig. Å oppdatere et tema eller en utvidelse er et spørsmål om filer; databasen trenger da ofte ikke være med. Mange synkroniseringsfunksjoner lar deg velge: kun filer, eller kun bestemte tabeller.
- Ved en nettbutikk eller et travelt nettsted: utfør heller endringen på nytt på produksjon (samme steg som på staging, nå som du vet at de fungerer) i stedet for å overføre databasen. Eller planlegg et rolig tidspunkt med en kort stans av butikken.
- Kontroller deretter produksjon: sjekklisten fra leksjon 8.2, og noindex-avkrysningen.
Staging er et sted å lære hva som skjer. Selve endringen utfører du tryggest på nytt på produksjon.
Opprydding
En staging som blir stående i måneder, blir et glemt nettsted: ikke oppdatert, med gamle utvidelser og ekte data. Nøyaktig den svake punktet fra leksjon 7.1. Slett staging-en når du er ferdig, eller hold den vedlike som et fullverdig nettsted (oppdateringer, passord). En klone tar også like mye plass som originalen og har sin egen database.
Oppsummering
- Staging er en kopi av nettstedet ditt på en egen adresse for å teste risikofylte endringer.
- Lag den med installereren din, webhotellet ditt, en utvidelse eller manuelt, helst på et subdomene med sertifikat.
- Skjerm den med en gang: passord og/eller noindex, ingen e-post til virkelige mennesker, betalinger i testmodus.
- Ikke synkroniser blindt tilbake: databasen til staging overskriver det som kom til på produksjon. Ta sikkerhetskopi først, kun det som er nødvendig, eller utfør endringen på nytt.
- Slett staging-en når du er ferdig, og ikke ta med noindex-avkrysningen til produksjon.
Quiz
Oppgave
Oppgave A8.3: Er testmiljøet ditt beskyttet? Fyll inn adressen til staging-en din (et subdomene av ditt eget domene, for eksempel fra oppgave D8.2) og til din virkelige nettside. Bevis med koden fra oppgaven at domenet er ditt. Programmet kontrollerer på staging-en: svarer den via https, og er den skjermet (et passordkrav, eller noindex i HTML-en eller i headeren X-Robots-Tag)? Peker REST-referansen (wp-json) til staging-en selv og ikke til din virkelige nettside? Og på din virkelige nettside: står det ikke noen noindex der?
Les mer
Disse artiklene beskriver stegene i kontrollpanelene til WebOké; i andre kontrollpaneler fungerer de på lignende måte.
