Modul 4 · 4.1
https og en god videresending
Modul 4: Hastighet, mobil og https · Lesetid: 11 minutter
Læringsmål: Etter denne leksjonen kan du forklare hvorfor https teller for søkemotorer og besøkende, beskrive forskjellen mellom en permanent og en midlertidig videresending, og sjekke at alle varianter av adressen din havner på den samme https-siden i ett steg.
Nøkkelbegreper: https, sertifikat, videresending (redirect), 301 og 308 (permanent), 302 og 307 (midlertidig), videresendingskjede, foretrukket adresse, www eller uten www, HSTS, blandet innhold
Fire adresser for én forside
Skriver du navnet på et nettsted i adressefeltet, kan nettleseren din havne på fire steder:
| Variant | Eksempel |
|---|---|
| http uten www | http://example.com/ |
| http med www | http://www.example.com/ |
| https uten www | https://example.com/ |
| https med www | https://www.example.com/ |
For deg er det ett nettsted. For en søkemotor er det fire forskjellige adresser. Viser alle fire den samme siden, må Google selv velge hvilken som er den «ekte» adressen. Google kaller det den kanoniske adressen (leksjon 3.5 går dypere inn på det). Google anbefaler at du selv velger én adresse som foretrukket adresse og videresender de andre variantene dit. Da er det ingen tvil, og lenker til hver variant teller for den samme siden.
Bloemenatelier Lotte velger https://www.example.com/. De tre andre variantene videresender dit. Om du velger med eller uten www, spiller ingen rolle for søkemotorer. Det viktige er at du tar ett valg og holder deg til det overalt: i menyen, i nettstedskartet, i canonical-taggen og i bedriftsprofilen din.
Hvorfor https
https betyr at forbindelsen mellom nettleser og server er kryptert med et sertifikat. Ingen underveis kan lese med eller endre noe på siden, for eksempel på et offentlig wifi-nett.
For søkemotorer teller https på to måter:
- Som signal. Google kunngjorde i 2014 at https er et rangeringssignal, men kalte det da «et veldig lett signal» som veier mindre enn godt innhold. I dokumentasjonen om sideopplevelse står https som et av spørsmålene du bør stille deg selv («leveres sidene dine på en sikker måte?»). Ikke overdriv det altså: https alene bringer deg ikke til toppen.
- For besøkende. Nettlesere viser «Ikke sikker» ved en side på http, særlig ved et skjema. En besøkende som ser det, faller fortere fra. Det merker du i besøkstallene, ikke i en rangeringsregel.
Et gyldig sertifikat får du i dag gratis via Let's Encrypt. Hos de fleste webhotell, også hos WebOké, bestilles og fornyes det automatisk. Pass på at sertifikatet dekker begge navnene: uten og med www. Dekker det bare example.com, gir https://www.example.com/ en sertifikatfeil, før videresendingen i det hele tatt kan skje.
Permanent eller midlertidig videresending
En videresending (redirect) er et svar fra serveren: «denne siden ligger et annet sted». Det skjer med en statuskode på tre sifre som begynner med 3, pluss en hoderad Location med den nye adressen.
| Kode | Betydning | Hva Google gjør med den |
|---|---|---|
| 301 | Permanent flyttet | Sterkt signal om at målet er den kanoniske adressen |
| 308 | Permanent flyttet (metoden forblir den samme) | Det samme som 301 |
| 302 | Midlertidig funnet | Ikke noe signal; den gamle adressen blir ofte stående i resultatene |
| 307 | Midlertidig (metoden forblir den samme) | Det samme som 302 |
Ifølge Google Search Central bruker indekseringen en permanent videresending som signal om at målet skal bli kanonisk. Ved en midlertidig videresending skjer ikke det: den gamle adressen blir som regel stående i resultatene. Fra http til https og for www eller uten www er situasjonen varig. Bruk derfor 301 eller 308.
Du kan se en videresending selv. I en terminal:
$ curl -sI http://example.com/
HTTP/1.1 301 Moved Permanently
Location: https://www.example.com/Eller i nettleseren: åpne utviklerverktøyene (F12), fanen Nettverk, slå på valget som tar vare på loggen når en ny side lastes inn, og last inn http-adressen. Da ser du hvert steg med sin kode.
Videresendingskjeder
En videresendingskjede er en videresending til en adresse som selv videresender igjen. Et vanlig eksempel:
http://example.com/ 301 → https://example.com/
https://example.com/ 301 → https://www.example.com/
https://www.example.com/ 200Det fungerer, men det koster en ekstra runde til serveren ved hvert første besøk. web.dev nevner videresendinger som en av årsakene til en treg første respons fra serveren (leksjon 4.3): hvert steg legges til, og kjeder enda mer. Bedre er at hver variant i ett steg havner på den foretrukne adressen:
http://example.com/ 301 → https://www.example.com/
http://www.example.com/ 301 → https://www.example.com/
https://example.com/ 301 → https://www.example.com/
https://www.example.com/ 200For den gamle http-adressen med det andre navnet går det ikke alltid i ett steg, fordi serveren med noen innstillinger først sender til https på det samme navnet og først deretter til det andre navnet. To steg er da akseptabelt; tre eller flere er en grunn til å se over innstillingene. En løkke (A sender til B, B sender tilbake til A) er alltid feil: da åpnes siden ikke i det hele tatt.
HSTS: nettleseren husker det
HSTS (HTTP Strict Transport Security, RFC 6797) er en hoderad som serveren sender med over https:
Strict-Transport-Security: max-age=31536000En nettleser som har sett dette én gang, går deretter selv rett til https for dette nettstedet, uten å prøve http først. Det sparer den første videresendingen og beskytter mot noen som kikker med. web.dev nevner også HSTS som en måte å unngå videresendingen fra http til https på. For søkemotorer er HSTS ikke et signal; for de besøkende er det en forbedring. Slå det først på når https fungerer på alle navn, for nettleseren husker det så lenge max-age sier. Kurset Veilig online går nærmere inn på dette.
Blandet innhold
En https-side som laster et bilde, et skript eller et stilark via http://, har blandet innhold (mixed content). Nettlesere blokkerer usikre skript og stilark, eller viser en advarsel. Etter overgangen til https ser du dette ofte ved gamle bilder i tekster eller ved et tema med faste adresser. Søk i kildekoden etter src="http:// og href="http:// og bytt dem ut med https eller med en relativ adresse.
I praksis: sett opp videresending til https
Med en webhotellpakke fra WebOké slår du på videresendingen til https i DirectAdmin under innstillingene for domenet (bryteren «Force SSL with https redirect»), og på den samme siden velger du under «Force redirect» om du bruker med eller uten www. Bruk ett sted for videresendingen: to regler som hver gjør noe annet (for eksempel i panelet og i en utvidelse), gir lett en løkke. Et nettsted som er laget med AI Builder, får et sertifikat og en egen adresse når det publiseres. I WordPress fyller du under Innstillinger, General inn WordPress-adressen og nettstedsadressen med https:// og navnet du har valgt; selve videresendingen ordner du på serveren. Hos andre leverandører og nettstedsbyggere fungerer det på lignende måte, bare knappene heter noe annet.
Vil du gjøre det via .htaccess (Apache eller LiteSpeed), sender dette alle variantene i ett steg til https://www.example.com:
RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www\.example\.com$ [NC]
RewriteRule ^ https://www.example.com%{REQUEST_URI} [R=301,L]Sjekk deretter alltid alle de fire variantene, også med en sti bak (http://example.com/contact): stien skal beholdes, ikke hoppe til forsiden.
Oppsummering
- Velg én foretrukket adresse (https, med eller uten www) og videresend de andre variantene dit.
- Bruk 301 eller 308 for varige videresendinger; 302 og 307 er midlertidige og gir Google ikke noe signal om den kanoniske adressen.
- La hver variant havne på den foretrukne adressen i ett steg, høyst to; kjeder koster tid, og løkker ødelegger nettstedet.
- https er ifølge Google et lett rangeringssignal; for besøkende handler det mest om tillit. Sertifikatet må dekke begge navnene.
- HSTS får nettleseren til å gå til https selv; blandet innhold rydder du opp i etter overgangen.
Quiz
Oppgave
Oppgave A4.1: Går alt til https i ett steg? Fyll inn domenenavnet ditt (uten www). Programmet prøver alle de fire variantene (http og https, med og uten www), følger hver videresending steg for steg og sjekker sertifikatet for begge navnene. Du ser for hver variant kjeden med statuskoder, om alle havner på den samme https-adressen, og om det finnes en HSTS-hoderad. Har du ikke eget nettsted? Bruk rijksoverheid.nl.
Les mer
Stegene i disse artiklene gjelder for panelene til WebOké; hos andre leverandører fungerer det på lignende måte.
- DirectAdmin-veiledning 6.4: Besøkende alltid sende til https
- DirectAdmin-veiledning 4.3: Innstillinger for et domene: SSL, PHP, www og private_html
- DirectAdmin-veiledning 6.3: Sertifikat for www, subdomener og wildcard
- Tving besøkende over til https
- Gratis DNS-kurs 3.4: www, videresending og hva DNS ikke gjør
- Google Search Central, Redirects and Google Search: https://developers.google.com/search/docs/crawling-indexing/301-redirects
- Google Search Central Blog, HTTPS as a ranking signal (2014): https://developers.google.com/search/blog/2014/08/https-as-ranking-signal
- RFC 6797 (HSTS): https://www.rfc-editor.org/rfc/rfc6797
- Gratis kurs Trygt på nett for bedrifter 4.2: Nettstedet ditt: https, HSTS og sikkerhetsheadere
- Gratis WordPress-kurs 3.1: Https og sertifikatet
- Gratis WordPress-kurs 3.2: www, videresending og blandet innhold
