# Hoe werken domeinomleidingen?

Er zijn veel mogelijkheden om domeinen of subdomeinen door te verwijzen naar een ander deel van uw website of naar een extern adres. Doorverwijzingen worden vaak uitgevoerd via **.htaccess**, **PHP-script**, **HTML-metatags** en **JavaScript**.

## Waarvoor worden domeinomleidingen gebruikt?

Omleidingen worden gebruikt om servers te informeren dat de inhoud van een website van de ene URL naar de andere is verplaatst. Dit is nodig wanneer het oorspronkelijke webadres de bestemming is van een inkomende link, is opgeslagen op de computer van een gebruiker of een prominente positie zou kunnen innemen in de resultatenpagina’s van zoekmachines (SERP’s). In dit geval geeft de redirect aan de browser of webcrawler door dat de inhoud is verplaatst, waardoor de gebruiker in plaats daarvan een link naar het nieuwe adres krijgt. Zonder redirects zouden websitebezoekers een 404-foutpagina te zien krijgen in plaats van de site die ze zoeken.

Dit is iets wat vooral commerciële webprojecten willen vermijden. Online winkels bieden een voortdurend wisselend assortiment aan producten die op verschillende webpagina’s worden weergegeven. Zodra een artikel niet meer beschikbaar is, worden potentiële klanten doorgestuurd naar een pagina met vergelijkbare producten. Zo kunt u **bezoekersstromen** efficiënt sturen en het bouncepercentage minimaliseren.

Wanneer u een domeinomleiding instelt, kunt u dezelfde inhoud ook beschikbaar maken op verschillende webadressen. Alle alternatieve adressen worden eenvoudigweg omgeleid naar het gewenste websitedomein, ongeacht de specifieke URL of het pad dat gebruikers invoeren.

## Welke soorten domeinomleidingen zijn er?

Er wordt over het algemeen onderscheid gemaakt tussen client-side en server-side redirects. Bij **server-side domeinredirects** worden de bijbehorende HTTP-statuscodes doorgegeven aan user agents (browsers of webcrawlers). Bij **client-side redirects** ligt dat iets anders. Deze worden uitgevoerd zonder enige vorm van respons, wat betekent dat er geen statuscodes worden afgegeven. Daarom wordt deze laatste methode niet door alle user agents ondersteund. Dit ongemak kan soms leiden tot situaties waarin bezoekers op de oorspronkelijke pagina blijven en nergens naartoe worden doorgestuurd. Vanwege dit soort nadelen wordt vaak de voorkeur gegeven aan server-side omleidingen. Client-side oplossingen mogen alleen worden gebruikt wanneer server-side domeinomleidingen om technische redenen niet mogelijk zijn.

Een ander type domeinomleiding is de transparante of onzichtbare omleiding. Bij dit type omleiding verandert de URL niet. Bij domeinomleidingen met maskering wordt de URL die aan de gebruiker wordt getoond niet gewijzigd, hoewel de klant is doorgestuurd naar een ander domein en de inhoud van een andere webpagina te zien krijgt. Aangezien dit type doorsturen echter problemen kan veroorzaken met de indexering en de manier waarop de URL in de browser wordt weergegeven, wordt het niet aanbevolen, tenzij er bepaalde beperkingen gelden.

Tip Wilt u een domeinomleiding instellen? In het volgende [artikel van het IONOS Helpcentrum](https://www.ionos.co.uk/help/domains/forwarding-a-domain/forwarding-a-domain-to-a-different-domain/ "Forwarding a Domain to a Different Domain - IONOS Help") leest u stap voor stap hoe u uw domein naar een ander domein kunt omleiden.

## Server-side omleidingen

In de meeste gevallen worden domeinomleidingen aan de serverzijde uitgevoerd via het configuratiebestand **.htaccess** of een **PHP-script**. Met deze methoden kan individueel worden bepaald welke HTTP-statuscode aan de user agent moet worden weergegeven. Zo kunnen websitebeheerders domeinomleidingen als permanent of tijdelijk markeren. Hiervoor worden de **HTTP-statuscodes** 301 en 302 gebruikt.

- **301 – Permanent verplaatst**: De gevraagde bron is nu permanent beschikbaar onder de omgeleide URL. De oude URL blijft vanaf dit moment ongeldig. Hier is een 301-omleiding nodig.
- **302 – Tijdelijk verplaatst**: De gevraagde bron is beschikbaar onder de omgeleide URL. In tegenstelling tot de 301-code blijft de oorspronkelijke URL geldig.

Als de HTTP-statuscode niet expliciet is gedefinieerd, geeft de webserver de 302-statuscode af tijdens een server-side omleiding. Dit is niet altijd nodig, dus u kunt het beste voor elke omleiding handmatig de gewenste statuscode invoeren. Dit helpt namelijk om de kans op **indexeringsfouten**, zoals [URL-kaping](https://www.ionos.com/nl-be/digitalguide/domeinen/domeinbeheer/url-kaping-wat-is-dat-eigenlijk/), te verkleinen. In tegenstelling tot de 301-omleiding, informeert de 302-statuscode webcrawlers dat de oorspronkelijke URL geïndexeerd moet blijven. Als dit permanent bedoeld is, concurreert het omleidingsadres met de omleidingsbestemming in de index van de zoekmachine.

### .htaccess omleiding

.htaccess is een **configuratiebestand** voor Apache-webservers. Het wordt gebruikt om centrale configuraties op directoryniveau te overschrijven. Met dit bestand kunnen websitebeheerders directory-specifieke instellingen uitvoeren voor domeinen en hun subdirectories. Een functie van het .htaccess-bestand is het server-side doorverwijzen van individuele adressen naar andere URL’s.

U kunt een domeinomleiding instellen met behulp van code in het .htaccess-bestand. Zodra een .htaccess-bestand met de volgende code in de hoofdmappen is geplaatst, worden verzoeken voor het oorspronkelijke domein aan de serverzijde omgeleid naar het domein `www.example.com`:

```apacheconf
Redirect 301 / http://www.example.com/
```

Deze regel code begint met `redirect 301` en bepaalt welke HTTP-statuscode de server moet afgeven. Daarna volgt het pad naar de inhoud die moet worden omgeleid. In het bovenstaande voorbeeld wordt alle inhoud omgeleid. De laatste stap wordt uitgevoerd wanneer de volledige bestemmings-URL wordt omgeleid naar de URL van de user agent: `http://www.example.com`.

Met deze methode kunnen individuele bestanden worden omgeleid. De volgende code toont een .htaccess-omleiding van de ene website naar de andere:

```apacheconf
Redirect 301 /directory/example-document.html http://www.example.com/example.html
```

Nadat de HTTP-statuscode 301 is afgehandeld, worden het pad naar de map van het bestand dat permanent moet worden omgeleid (`/directory/example-document.html`) en de omleidings-URL (`http://www.example.com/example.html`) benoemd.

Zo zou de permanente omleiding eruitzien op een Apache-server met een actieve **mod\_rewrite-module**:

```apacheconf
RewriteEngine On
RewriteRule ^directory/example-document.html$ http://www.example.com/example.html [L,R=301]
```

In coderegel 01 wordt de mod\_rewrite-module van de Apache-webserver geactiveerd met het commando `RewriteEngine On`. Daarna volgt een `RewriteRule` met het pad van het omleidingsbestand en het bestemmingsadres. Caret- en dollarteken symbolen markeren het begin en het einde van het pad, en `L` labelt de laatste mod rewrite-regel voor het bijbehorende verzoek. `R=301` stuurt de HTTP-status 301 door.

Tip In een ander artikel hebben we enkele .htaccess-trucs voor u verzameld.

U kunt ook meer te weten komen over rewrite-engines in onze digitale gids.

Bij het configureren van een domeinomleiding via .htaccess is het belangrijk om in gedachten te houden dat onjuiste invoer **ernstige gevolgen** kan hebben voor de werking van een website. Aangezien deze wijzigingen direct van kracht worden nadat u het .htaccess-bestand hebt opgeslagen, moeten configuraties altijd grondig worden getest.

### PHP-omleidingen

Een domeinomleiding kan niet alleen worden uitgevoerd via de .htaccess-configuratie, maar ook via een commando in een PHP-script (bijvoorbeeld in *index.php*). De volgende code toont een permanente omleiding naar de fictieve bestemmings-URL `www.example.com`:

```php
<?php
header("Status: 301 Moved Permanently");
header("Location: http://www.example.com");
exit;
?>
```

Bij het doorsturen via een PHP-script wordt de beoogde HTTP-statuscode gedefinieerd via de functie `header` in de tweede regel van de code. In dit voorbeeld moet een permanente 301-omleiding worden uitgevoerd. Aangezien omleidingen aan de serverzijde normaal gesproken **tijdelijk** worden **uitgevoerd**, moeten er actieve maatregelen worden genomen om permanente omleidingen via de 301-statuscode uit te voeren. Bij permanente omleidingen wordt ook het bestemmingsadres van de domeinomleiding geregistreerd met `header`. De omleiding in dit voorbeeld gaat dan naar het adres `http://www.example.com`. De functie `exit` in regel 04 van de code beëindigt het script en voorkomt dat een volgende regel code wordt uitgevoerd. Om omleidingen via PHP-script te laten werken, moet het codeblok aan het begin van de HTML-pagina staan. Dit voorkomt dat de server HTML-inhoud naar de omleidingspagina overbrengt.

## Omleidingen aan de kant van de klant

Als het om technische redenen niet mogelijk is om een domeinomleiding aan de serverzijde uit te voeren, kunnen websitebeheerders gebruikmaken van oplossingen aan de clientzijde. Hiervoor zijn zowel de **HTML-metatag `refresh`** als **JavaScript** beschikbaar. Het nadeel van omleidingen aan de clientzijde is dat servers geen HTTP-statuscodes verstrekken aan verzoekende browsers of webcrawlers, waardoor deze niet expliciet op de hoogte worden gesteld van de omleiding. Bovendien worden client-side omleidingen niet door alle user agents ondersteund, waardoor het risico bestaat dat niet alle websitebezoekers worden omgeleid.

Client-side redirects hebben een negatief effect op de indexering door zoekmachines. Expliciete uitsluiting van indexering via de HTTP-statuscode 301 vindt niet plaats bij client-side redirects. Dit kan ertoe leiden dat redirect-domeinen concurreren met bestemmingsdomeinen als het gaat om de rangschikking in zoekmachines. In tegenstelling tot server-side redirects, die grotendeels onzichtbaar blijven voor gebruikers, gaan client-side redirects altijd gepaard met **vertragingen**, die sommige gebruikers uiteindelijk kunnen opmerken.

### Doorsturen via HTML meta refresh

HTML meta-omleidingen worden geïmplementeerd via meta-tags met het attribuut `http-equiv`. Het enige wat hiervoor nodig is, is een eenvoudig HTML-bestand en een bijpassende tag in de header voor het maken van omleidingen. Om bezoekers van uw website op de hoogte te brengen van de omleiding, moet er een overeenkomstige melding worden ingesteld in het HTML-document. Typische voorbeelden zijn regels als **‘Even geduld a.u.b. U wordt omgeleid…’.** Een eenvoudige domeinomleiding via HTML meta refresh ziet er als volgt uit:

```html
<meta http-equiv="refresh" content="10; url=http://www.example.com/">
```

De klant wordt gevraagd om het domein om te leiden via de metatag `http-equiv="refresh"`. Hoe dit gebeurt, kan worden gedefinieerd in het inhoudsattribuut. In het voorbeeld worden gebruikers na tien seconden omgeleid naar het doeldomein `www.example.com`.

### JavaScript-omleidingen

JavaScript biedt een eenvoudige mogelijkheid voor domeinomleidingen aan de clientzijde. Net als bij de meta-tag `refresh` mogen JavaScript-omleidingen echter alleen per geval worden gebruikt, omdat deze op scripts gebaseerde taal vanwege veiligheidsoverwegingen **niet door elke webbrowser** wordt **ondersteund**. JavaScript kan ook problemen veroorzaken voor webcrawlers en gebruikers met actieve NoScript-add-ons. Zo ziet de code voor een domeinomleiding via JavaScript eruit:

```html
<script> 
window.location.replace('http://www.example.com'); 
</script>
```

Het belangrijkste hier is de derde regel code. In de voorbeeldcode wordt het object `window.location` gebruikt om te verwijzen naar het huidige websiteadres. Het commando `replace` geeft de browser de opdracht om de gebruiker door te sturen naar het domein dat tussen de haakjes staat: `www.example.com`.


This is a markdown version of: [https://www.ionos.com/nl-be/digitalguide/domeinen/domeinbeheer/de-basisprincipes-van-domeinomleidingen/](https://www.ionos.com/nl-be/digitalguide/domeinen/domeinbeheer/de-basisprincipes-van-domeinomleidingen/) for AI/LLM consumption.