Aangepast domein instellen
Het instellen van een aangepast domein voor je Dockit documentatiesite helpt bij het vestigen van je merkidentiteit en zorgt voor een professionele uitstraling. Deze gids behandelt het complete proces voor het configureren van aangepaste domeinen op verschillende hosting platforms.
Overzicht
Abschnitt betitelt „Overzicht“Een aangepast domein stelt je in staat om je documentatie te serveren vanaf je eigen gemerkte URL in plaats van het standaard hosting provider subdomein. Bijvoorbeeld:
- Standaard:
your-docs.netlify.appofyour-docs.vercel.app - Aangepast:
docs.jouwbedrijf.comofhelp.jouwbedrijf.com
Vereisten
Abschnitt betitelt „Vereisten“Voordat je een aangepast domein instelt, zorg ervoor dat je hebt:
- Domein eigendom: Je bezit of beheert het domein dat je wilt gebruiken
- DNS toegang: Mogelijkheid om DNS-records voor je domein te wijzigen
- Gedeployde site: Je Dockit site is al gedeployeerd en werkt
- SSL-certificaat: HTTPS-ondersteuning (meestal automatisch verstrekt)
Domein configuratie opties
Abschnitt betitelt „Domein configuratie opties“Subdomein instelling (Aanbevolen)
Abschnitt betitelt „Subdomein instelling (Aanbevolen)“Een subdomein gebruiken is de meest voorkomende en aanbevolen benadering:
docs.jouwbedrijf.comhelp.jouwbedrijf.comsupport.jouwbedrijf.comknowledge.jouwbedrijf.comRoot domein instelling
Abschnitt betitelt „Root domein instelling“Je kunt ook je root domein gebruiken, hoewel dit extra overwegingen vereist:
jouwbedrijf.comjouwdocs.comPath-gebaseerde instelling
Abschnitt betitelt „Path-gebaseerde instelling“Serveer documentatie vanaf een specifiek pad:
jouwbedrijf.com/docsjouwbedrijf.com/helpPlatform-specifieke installatie
Abschnitt betitelt „Platform-specifieke installatie“Netlify configuratie
Abschnitt betitelt „Netlify configuratie“Stap 1: Aangepast domein toevoegen in Netlify
Abschnitt betitelt „Stap 1: Aangepast domein toevoegen in Netlify“- Ga naar je site’s Site Settings in Netlify dashboard
- Navigeer naar Domain management → Custom domains
- Klik op Add custom domain
- Voer je domein in (bijv.
docs.jouwbedrijf.com)
Stap 2: DNS-records configureren
Abschnitt betitelt „Stap 2: DNS-records configureren“Voeg een CNAME-record toe bij je DNS-provider:
Type: CNAMENaam: docs (of je gekozen subdomein)Waarde: your-site-name.netlify.appTTL: 3600 (of Auto)Stap 3: HTTPS inschakelen
Abschnitt betitelt „Stap 3: HTTPS inschakelen“Netlify verstrekt automatisch SSL-certificaten via Let’s Encrypt:
- Wacht op DNS-propagatie (tot 24 uur)
- SSL-certificaat wordt automatisch uitgegeven
- Forceer HTTPS-omleiding in Site Settings → HTTPS
Stap 4: _redirects configureren (Optioneel)
Abschnitt betitelt „Stap 4: _redirects configureren (Optioneel)“Maak een _redirects bestand in je public/ directory:
# Forceer HTTPShttp://docs.jouwbedrijf.com/* https://docs.jouwbedrijf.com/:splat 301!
# Omleiden oude paden/old-docs/* /new-docs/:splat 301/v1/* /latest/:splat 301
# SPA fallback/* /index.html 200Vercel configuratie
Abschnitt betitelt „Vercel configuratie“Stap 1: Domein toevoegen in Vercel
Abschnitt betitelt „Stap 1: Domein toevoegen in Vercel“- Ga naar je project dashboard
- Navigeer naar Settings → Domains
- Voer je aangepaste domein in
- Kies de deployment branch
Stap 2: DNS configureren
Abschnitt betitelt „Stap 2: DNS configureren“Voor subdomeinen, voeg een CNAME-record toe:
Type: CNAMENaam: docsWaarde: cname.vercel-dns.comVoor root domeinen, voeg A-records toe:
Type: ANaam: @Waarde: 76.76.19.61
Type: ANaam: @Waarde: 76.76.19.62Stap 3: Domein verifiëren
Abschnitt betitelt „Stap 3: Domein verifiëren“Vercel zal automatisch je domein verifiëren en SSL-certificaten uitgeven.
Stap 4: vercel.json configureren
Abschnitt betitelt „Stap 4: vercel.json configureren“{ "redirects": [ { "source": "/old-path", "destination": "/new-path", "permanent": true } ], "headers": [ { "source": "/(.*)", "headers": [ { "key": "X-Content-Type-Options", "value": "nosniff" }, { "key": "X-Frame-Options", "value": "DENY" }, { "key": "X-XSS-Protection", "value": "1; mode=block" } ] } ]}GitHub Pages configuratie
Abschnitt betitelt „GitHub Pages configuratie“Stap 1: Repository-instellingen configureren
Abschnitt betitelt „Stap 1: Repository-instellingen configureren“- Ga naar repository Settings → Pages
- Selecteer bron (meestal
mainbranch) - Voeg aangepast domein toe in het Custom domain veld
Stap 2: CNAME bestand maken
Abschnitt betitelt „Stap 2: CNAME bestand maken“Maak een CNAME bestand in je repository root of public/ directory:
docs.jouwbedrijf.comStap 3: DNS configureren
Abschnitt betitelt „Stap 3: DNS configureren“Voeg een CNAME-record toe die wijst naar GitHub Pages:
Type: CNAMENaam: docsWaarde: jouwgebruikersnaam.github.ioStap 4: HTTPS inschakelen
Abschnitt betitelt „Stap 4: HTTPS inschakelen“GitHub Pages verstrekt automatisch SSL-certificaten voor aangepaste domeinen.
Firebase Hosting configuratie
Abschnitt betitelt „Firebase Hosting configuratie“Stap 1: firebase.json configureren
Abschnitt betitelt „Stap 1: firebase.json configureren“{ "hosting": { "public": "dist", "site": "your-project-id", "cleanUrls": true, "trailingSlash": false, "rewrites": [ { "source": "**", "destination": "/index.html" } ], "headers": [ { "source": "**/*.@(jpg|jpeg|gif|png|svg|webp|js|css)", "headers": [ { "key": "Cache-Control", "value": "max-age=31536000" } ] } ] }}Stap 2: Aangepast domein toevoegen
Abschnitt betitelt „Stap 2: Aangepast domein toevoegen“firebase hosting:channel:deploy live --only hostingfirebase hosting:site:get your-project-idVoeg domein toe in Firebase Console:
- Ga naar Hosting sectie
- Klik op Add custom domain
- Volg de verificatiestappen
Stap 3: DNS-configuratie
Abschnitt betitelt „Stap 3: DNS-configuratie“Voeg de verstrekte DNS-records toe uit Firebase Console.
DNS Provider voorbeelden
Abschnitt betitelt „DNS Provider voorbeelden“Cloudflare DNS
Abschnitt betitelt „Cloudflare DNS“Type: CNAMENaam: docsContent: your-site.netlify.appProxy status: Proxied (oranje wolk)TTL: AutoAanvullende Cloudflare-instellingen:
- SSL/TLS: Full (strict)
- Always Use HTTPS: Aan
- Automatic HTTPS Rewrites: Aan
Google Domains
Abschnitt betitelt „Google Domains“Type: CNAMENaam: docsData: your-site.netlify.app.TTL: 1 uurNamecheap DNS
Abschnitt betitelt „Namecheap DNS“Type: CNAME RecordHost: docsWaarde: your-site.netlify.appTTL: AutomaticRoute 53 (AWS)
Abschnitt betitelt „Route 53 (AWS)“{ "Type": "CNAME", "Name": "docs.jouwbedrijf.com", "Value": "your-site.netlify.app", "TTL": 300}SSL-certificaat configuratie
Abschnitt betitelt „SSL-certificaat configuratie“Automatische SSL (Aanbevolen)
Abschnitt betitelt „Automatische SSL (Aanbevolen)“De meeste moderne hosting platforms bieden automatische SSL:
- Netlify: Let’s Encrypt (automatisch)
- Vercel: Automatische SSL-verstrekking
- GitHub Pages: Automatisch voor aangepaste domeinen
- Firebase: Google-beheerde certificaten
Handmatige SSL-configuratie
Abschnitt betitelt „Handmatige SSL-configuratie“Voor geavanceerde setups heb je mogelijk handmatige SSL-configuratie nodig:
server { listen 443 ssl http2; server_name docs.jouwbedrijf.com;
ssl_certificate /path/to/certificate.crt; ssl_certificate_key /path/to/private.key;
ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers ECDHE-RSA-AES256-GCM-SHA512:DHE-RSA-AES256-GCM-SHA512; ssl_prefer_server_ciphers off;
location / { proxy_pass http://localhost:3000; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; }}Geavanceerde configuratie
Abschnitt betitelt „Geavanceerde configuratie“Meerdere domeinen
Abschnitt betitelt „Meerdere domeinen“Configureer meerdere domeinen voor dezelfde site:
[[redirects]] from = "https://old-docs.com/*" to = "https://docs.jouwbedrijf.com/:splat" status = 301 force = true
[[redirects]] from = "https://help.jouwbedrijf.com/*" to = "https://docs.jouwbedrijf.com/:splat" status = 301 force = trueInternationalisatie domeinen
Abschnitt betitelt „Internationalisatie domeinen“Stel verschillende domeinen in voor verschillende talen:
docs.jouwbedrijf.com (Nederlands)docs-en.jouwbedrijf.com (Engels)docs-de.jouwbedrijf.com (Duits)docs-fr.jouwbedrijf.com (Frans)CDN integratie
Abschnitt betitelt „CDN integratie“Configureer CDN voor betere prestaties:
{ "functions": { "app/api/**/*.js": { "maxDuration": 30 } }, "regions": ["iad1", "sfo1", "fra1"], "github": { "enabled": false }}Beveiligings beste praktijken
Abschnitt betitelt „Beveiligings beste praktijken“HSTS configuratie
Abschnitt betitelt „HSTS configuratie“Schakel HTTP Strict Transport Security in:
Strict-Transport-Security: max-age=31536000; includeSubDomains; preloadContent Security Policy
Abschnitt betitelt „Content Security Policy“Content-Security-Policy: default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval'; style-src 'self' 'unsafe-inline'; img-src 'self' data: https:; font-src 'self' data:; connect-src 'self'; media-src 'self'; object-src 'none'; child-src 'self'; frame-ancestors 'none'; form-action 'self'; base-uri 'self';Aanvullende beveiligingsheaders
Abschnitt betitelt „Aanvullende beveiligingsheaders“X-Content-Type-Options: nosniffX-Frame-Options: DENYX-XSS-Protection: 1; mode=blockReferrer-Policy: strict-origin-when-cross-originPermissions-Policy: geolocation=(), microphone=(), camera=()Prestatie-optimalisatie
Abschnitt betitelt „Prestatie-optimalisatie“DNS-optimalisatie
Abschnitt betitelt „DNS-optimalisatie“- Gebruik snelle DNS-providers: Cloudflare, Route 53, of Google DNS
- Minimaliseer DNS-lookups: Verminder externe resource-afhankelijkheden
- Schakel DNS prefetching in:
<link rel="dns-prefetch" href="//example.com">
Caching-strategie
Abschnitt betitelt „Caching-strategie“# Statische assetsCache-Control: public, max-age=31536000, immutable
# HTML-bestandenCache-Control: public, max-age=0, must-revalidate
# API-responsenCache-Control: public, max-age=300, s-maxage=600Monitoring en analytics
Abschnitt betitelt „Monitoring en analytics“Domein gezondheidsmonitoring
Abschnitt betitelt „Domein gezondheidsmonitoring“Stel monitoring in voor je aangepaste domein:
// Basis uptime monitoringasync function checkDomainHealth() { try { const response = await fetch('https://docs.jouwbedrijf.com/health'); if (response.ok) { console.log('Domein is gezond'); } else { console.error('Domein gezondheidscheck gefaald'); } } catch (error) { console.error('Domein is onbereikbaar:', error); }}
setInterval(checkDomainHealth, 300000); // Check elke 5 minutenAnalytics configuratie
Abschnitt betitelt „Analytics configuratie“<!-- Google Analytics --><script async src="https://www.googletagmanager.com/gtag/js?id=GA_TRACKING_ID"></script><script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'GA_TRACKING_ID', { custom_map: { 'custom_parameter': 'dimension1' } });</script>Probleemoplossing
Abschnitt betitelt „Probleemoplossing“Veelvoorkomende problemen
Abschnitt betitelt „Veelvoorkomende problemen“DNS-propagatie vertragingen
Abschnitt betitelt „DNS-propagatie vertragingen“DNS-wijzigingen kunnen tot 48 uur duren om wereldwijd volledig te propageren:
# Check DNS-propagatiedig docs.jouwbedrijf.comnslookup docs.jouwbedrijf.comOnline tools:
- whatsmydns.net
- dnschecker.org
SSL-certificaat problemen
Abschnitt betitelt „SSL-certificaat problemen“Veelvoorkomende SSL-problemen en oplossingen:
- Mixed content fouten: Zorg ervoor dat alle resources HTTPS gebruiken
- Certificaat mismatch: Verifieer dat domeinnamen overeenkomen met certificaat
- Verlopen certificaten: Stel auto-vernieuwing in
Omleidingslussen
Abschnitt betitelt „Omleidingslussen“Voorkom oneindige omleidingen:
# Incorrecthttps://docs.jouwbedrijf.com → https://docs.jouwbedrijf.com
# Correcthttp://docs.jouwbedrijf.com → https://docs.jouwbedrijf.comPrestatieproblemen
Abschnitt betitelt „Prestatieproblemen“Diagnoseer en los prestatieproblemen op:
# Test site snelheidcurl -w "@curl-format.txt" -o /dev/null -s "https://docs.jouwbedrijf.com"
# Check response headerscurl -I "https://docs.jouwbedrijf.com"Debug tools
Abschnitt betitelt „Debug tools“DNS debugging
Abschnitt betitelt „DNS debugging“# Check A-recordsdig A docs.jouwbedrijf.com
# Check CNAME-recordsdig CNAME docs.jouwbedrijf.com
# Check MX-recordsdig MX jouwbedrijf.com
# Trace DNS-resolutiedig +trace docs.jouwbedrijf.comSSL debugging
Abschnitt betitelt „SSL debugging“# Check SSL-certificaatopenssl s_client -connect docs.jouwbedrijf.com:443 -servername docs.jouwbedrijf.com
# Test SSL-configuratiecurl -vI https://docs.jouwbedrijf.comMigratie strategieën
Abschnitt betitelt „Migratie strategieën“Zero-downtime migratie
Abschnitt betitelt „Zero-downtime migratie“Plan voor naadloze domeinmigratie:
- Nieuw domein voorbereiden: Volledig instellen en testen
- DNS bijwerken met lage TTL: Propagatietijd verkorten
- Traffic monitoren: Letten op eventuele problemen
- Omleidingen implementeren: Gebruikers naar nieuw domein leiden
- Interne links bijwerken: Alle referenties wijzigen
- Gebruikers informeren: De wijziging communiceren
Migratie checklist
Abschnitt betitelt „Migratie checklist“- Domein eigendom geverifieerd
- DNS-records geconfigureerd
- SSL-certificaat actief
- Omleidingen geïmplementeerd
- Interne links bijgewerkt
- Externe referenties geïnformeerd
- Analytics tracking bijgewerkt
- SEO-overwegingen aangepakt
- Monitoring alerts geconfigureerd
- Rollback plan voorbereid
Beste praktijken
Abschnitt betitelt „Beste praktijken“- Kies betekenisvolle subdomeinen: Gebruik duidelijke, beschrijvende namen
- Schakel overal HTTPS in: Serveer nooit content over HTTP
- Monitor domein gezondheid: Stel uptime monitoring in
- Plan voor rampen: Heb backup domeinen klaar
- Documenteer je setup: Houd configuratierecords bij
- Regelmatig onderhoud: Review en update configuraties
- Beveiliging eerst: Implementeer juiste headers en beleid
- Prestaties zijn belangrijk: Optimaliseer voor snelheid en betrouwbaarheid
Conclusie
Abschnitt betitelt „Conclusie“Het instellen van een aangepast domein voor je Dockit documentatiesite verbetert je merkpresentatie en biedt een professionele ervaring voor je gebruikers. Volg de platform-specifieke instructies, implementeer juiste beveiligingsmaatregelen en monitor je domein’s gezondheid voor de beste resultaten.
Vergeet niet om grondig te testen in een staging-omgeving voordat je wijzigingen aanbrengt aan productie domeinen, en heb altijd een rollback plan klaar voor het geval van problemen.