Koble domene til GitHub Pages: komplett guide
Koble domene til GitHub Pages handler i praksis om riktige DNS-poster hos domeneregistraren din. Når postene peker mot GitHub sine servere, vises nettstedet ditt på ditt eget .no-domene. Med stegene under er du live på under ti minutter.
TL;DR: Dette trenger du å vite
- Rot-domenet (feno.no) trenger fire A-poster og fire AAAA-poster som peker til GitHub.
- www (www.feno.no) settes opp med én CNAME-post til brukernavn.github.io.
- MX-postene for e-post lar du ligge, da fungerer posten som før.
- Endringen sprer seg vanligvis på minutter, men kan ta opptil 24 timer.
Koble domene til GitHub Pages: steg for steg
GitHub Pages krever at domenet peker mot fire bestemte IP-adresser. Verdiene er de samme for alle GitHub Pages-brukere, så det er bare å kopiere dem nøyaktig.
Steg 1: Legg inn fire A-poster
- Logg inn hos domeneregistraren og åpne DNS-innstillingene. Bruker du Feno, finner du dem i kontrollpanelet hos Feno.
- Opprett fire A-poster for selve domenet. De fleste registrarer bruker «@» som host, andre lar feltet stå tomt.
- 185.199.108.153
- 185.199.109.153
- 185.199.110.153
- 185.199.111.153
En A-post (Address Record) peker et domenenavn mot en IP-adresse, altså den tekniske adressen til en server. De fire postene er GitHub sine adresser, og å ha alle fire gir jevnere belastning.
Steg 2: Legg inn AAAA-poster for IPv6
AAAA-postene er det samme, men for IPv6-adresser. De fire verdiene er faste:
- 2606:50c0:8000::153
- 2606:50c0:8001::153
- 2606:50c0:8002::153
- 2606:50c0:8003::153
AAAA-postene er anbefalt, men ikke påbudt. Uten dem får besøkende som surfer på rene IPv6-nettverk ikke åpnet nettstedet.
Steg 3: Legg inn CNAME-posten for www
www er ikke en egen adresse, men et alias. Derfor bruker du en CNAME-post (Canonical Name) som sier at www.feno.no er det samme som brukernavn.github.io.
- Opprett en CNAME-post med host «www».
- Sett verdien til brukernavn.github.io, der du bytter ut med ditt eget GitHub-brukernavn.
GitHub Pages støtter ikke CNAME på selve rot-domenet, og Norid tillater det heller ikke for .no-domener. Roten må alltid bruke A-poster, www bruker CNAME.
Steg 4: Registrer domenet i GitHub Pages
- Gå til Settings i GitHub-repoet ditt, så til Pages.
- Skriv inn domenet under Custom domain og lagre. Vil du ha www som hovedadresse, skriver du inn www-formen, så omdirigerer GitHub rot-domenet automatisk dit.
- Merk av for Enforce HTTPS. Da utstedes et gratis SSL-sertifikat automatisk, og besøkende får kryptert forbindelse.
Rot-domene eller www: hva betyr valget?
Rot-domenet er adressen uten prefiks, som feno.no. www er et alias på toppen av rot-domenet. For besøkende utgjør valget lite, men for DNS-oppsettet er forskjellen avgjørende, siden de to versjonene krever ulike poster.
Når du skal koble domene til GitHub Pages, er det vanligste valget å bruke www som hovedadresse. Da kan rot-domenet stå igjen med A-postene og enkelt omdirigere til www, og du slipper å endre IP-adresser direkte på roten senere.
E-posten: slik beholder du den
E-posten din styres av MX-postene, som bestemmer hvor meldinger skal leveres. De ligger på rot-domenet og kolliderer ikke med A-postene eller AAAA-postene. Det eneste du må gjøre, er å la MX-postene, SPF-postene (TXT) og eventuelle DKIM-nøkler ligge urørt.
Den vanligste feilen er å slette gamle poster for å «rydde opp». Da slutter e-posten å virke uten at du skjønner hvorfor. Send en testmelding til og fra domenet etter at endringen er spredt, så bekrefter du at alt fungerer.
Hvor lang tid tar endringen?
Når du lagrer DNS-postene, begynner opplysningene å spre seg ut til alle internettleverandører. Hos de fleste tar det noen minutter til et par timer. I verste fall må du regne med opptil 24 timer.
TTL (Time to Live) styrer hvor lenge en oppføring skal ligge i minne hos internettleverandører. Setter du TTL lavt, for eksempel 300 sekunder, et par timer før du bytter poster, spres endringen raskere. Vær obs på at TTL-en du har stående nå, gjelder for neste endring, så sett den ned i god tid.
Har du DNSSEC aktivert, signeres de nye postene automatisk hos registrarer som Feno. Da kan besøkende verifisere at DNS-svarene er ekte, og du trenger ikke gjøre noe manuelt når du legger inn A-postene.
HTTPS-sertifikatet utstedes automatisk av GitHub etter at domenet er lagt inn, men det kan ta opptil 24 timer. Du kan åpne nettstedet i mellomtiden, men nettleseren kan vise en sikkerhetsadvarsel inntil sertifikatet er på plass.
Fem tips for et problemfritt oppsett
- Kopier IP-adressene fra listen i stedet for å taste dem inn. En skrivefeil i én A-post gjør siden ustabil.
- Ikke bruk CNAME på rot-domenet. Verken GitHub Pages eller Norid tillater det for .no.
- La MX- og SPF-postene ligge urørt, ellers forsvinner e-posten.
- Legg inn AAAA-postene med en gang, så slipper du IPv6-brukere med tom side.
- Test fra flere nettverk, for eksempel telefonen på mobildata, før du konkluderer.
Ofte stilte spørsmål
Må jeg flytte domenet for å bruke det med GitHub Pages?
Nei. Du kan gjøre endringene hos registraren domenet ligger hos i dag. Foretrekker du ett kontrollpanel for alt, kan du flytte domenet ditt til Feno uten nedetid, og deretter legge inn postene der.
Kan e-post og GitHub Pages leve på samme domene?
Ja. E-post bruker MX-postene og GitHub Pages bruker A- og AAAA-postene. De ligger side om side på rot-domenet, så det er ingen konflikt så lenge du ikke sletter MX-postene.
Hvorfor er siden ikke oppe etter én time?
Internettleverandører cacher DNS-svar i det tidsrommet TTL-en tilsier, og noen nettverk oppdaterer tregere enn andre. I tillegg kan HTTPS-sertifikatet ta tid. Feilsøk gjerne med et DNS-oppslag på nett, for eksempel DNS Checker, og sjekk at alle postene viser riktige verdier.
Konklusjon
Å koble domene til GitHub Pages handler om fire A-poster, fire AAAA-poster, én CNAME-post og å la MX-postene være i fred. Når det er på plass, spres endringen i løpet av minutter til timer, og GitHub håndterer sertifikatet for deg.
Har du domenet hos en registrar som gjør ting unødvendig komplisert, er det enkelt å bytte. Registrer eller flytt domenet ditt hos Feno og få DNSSEC, skjult e-post og transparent prising som standard.