301 Redirect in .htaccess, PHP en IIS

Redactie
Eerder dit jaar heb ik een artikel geschreven over het effectief lanceren van een nieuwe website zonder daarbij de huidige posities en bezoekers te verliezen. In het artikel ben ik kort ingegaan op redirects. Nu wil ik in dit artikel je wat meer vertellen over redirects en op welke wijze je deze allemaal kan instellen.

301 Redirect

Er zijn verschillende soorten redirects maar de redirect die het meeste aandacht krijgt en ook de meest belangrijke is voor SEO is de 301 redirect. De 301 redirect is een permanente redirect en zal de linkwaarde van de oude pagina of het domein grotendeels doorsturen. Wanneer je deze niet instelt of gebruik maakt van een verkeerde redirect (bijvoorbeeld een 302, tijdelijke redirect) is de kans groot dat eerder behaalde resultaten zullen wegvallen.

Een redirect is in te stellen van domein naar domein (nieuwe URL) maar ook gewoon binnen een domein.

301 Redirect in . htaccess

Een 301 redirect is in te stellen in de .htaccess. De meest eenvoudige manier is om voor iedere redirect die je wilt doorvoeren een aparte redirect regel in te stellen. Dit kan door de volgende regel aan te passen en te plaatsen in de .htaccess:

Redirect 301 /oude-pagina.php https://www.domein.nl/nieuwe-pagina.php

Belangrijk is hierbij dat bij de oude locatie er geen domein wordt vernoemd maar alleen wat achter het domein staat. Bij de nieuwe locatie dient de hele nieuwe URL er komen te staan.

Wanneer je een nieuwe website hebt kan ik me voorstellen dat het opstellen van aparte regels per redirect veel werk is. Het is ook mogelijk om via een RewriteRule een grote groep redirects door te voeren.

RewriteEngine on
RewriteCond %{HTTP_HOST} ^([^.:]+.)*oud-domein.nl.?(:[0-9]*)?$ [NC]
RewriteRule ^/(.*)$ https://www.nieuw-domein.nl/$1 [R=301,L]

301 Redirect in PHP

Naast de veel gebruikte methode om een redirect uit te voeren via de .htaccess is het ook mogelijk om de redirect door te voeren in PHP. Dit gebeurt dan op de pagina die geladen wordt. Dus mocht je de pagina willen verwijderen uit je systeem kan deze optie niet gebruikt worden.

Zet de volgende code op de oude pagina (www.domein.nl/oude-pagina.php).

301 Redirect in IIS

Wanneer je website draait op een IIS (Windows) server dan gaat het instellen van een 301 redirect net iets anders. Hiervoor dien je de volgende 5 stappen te volgen.

  1. Open Internet Services Manager en klik met de rechter muisknop op het bestand dat je wilt redirecten en ga naar de tab ‘Home Directory’.
  2. Selecteer de optie ‘A redirection to a URL’.
  3. Type de nieuwe locatie in.
  4. Vink ‘The exact URL entered abov’ en ‘A permanent redirection for this resource’ aan.
  5. Klik vervolgens op ‘Apply’.

Overige 301 Redirects

Er zijn nog meerdere mogelijkheden voor het doorvoeren van een 301 redirect. Een duidelijke uitleg hierover is te vinden op Metatags.nl, maar let wel op dat niet alle manieren van redirecten de waarde van de oude locatie doorgeven aan de nieuwe locatie. Mijn advies is wanneer mogelijk gebruik te maken van bovengenoemde manieren.

Limiet op het aantal 301 Redirects?

Er is geen limiet op de aantallen redirects die verwijzen van de oude locatie naar de nieuwe locatie van de website. Wel zit er een ‘limiet’ op het aantal redirects die geschakeld zijn, want een zoekmachine stopt na een aantal keer te zijn doorgestuurd met een redirect. Het is goed wanneer je een redirect van een pagina instelt om te kijken of je ook een oude redirect moet aanpassen.

Bijvoorbeeld:

  • Pagina A verwijst naar Pagina B.
  • Er komt een Pagina C.
  • FOUT: Pagina A verwijst naar Pagina B en Pagina B verwijst naar Pagina C.
  • GOED: Pagina A en Pagina B verwijzen naar pagina C.

Hopelijk kun je op basis van dit artikel aan de slag met het goed instellen van je 301 redirects. We zijn heel benieuwd naar hoe anderen hier mee omgaan. Deel je ervaringen of vragen in de comments!