Htaccess - 301 Redirect


Met .htaccess kan ingesteld worden dat een bezoeker automatisch wordt doorgestuurd naar een andere locatie. Bijvoorbeeld als je een bestaande pagina verplaatst naar een andere locatie dan kun je met behulp van een .htaccess redirect instellen dat bezoekers die het oude adres bezoeken automatisch worden doorgestuurd naar de nieuwe locatie.

301 Redirect instellen

Bij het instellen van een redirect is het aan te raden om gebruik te maken van een zogenaamde 301 redirect. Hiermee geef je aan richting zoekmachines dat de verwijzing permanent is en niet tijdelijk wat ingesteld kan worden met 302 redirect. Een 301 redirect heeft de voorkeur boven alle andere manieren waaronder het plaatsen van een Metatag.

Het instellen van een 301 redirect gaat zoals hieronder in het voorbeeld door achter "Redirect" de cijfers 301 te plaatsen. In het voorbeeld is de locatie /oudemap/ en de nieuwe locatie is http://www.websonic.nl/nieuw/. Geef bij de nieuwe locatie voor de duidelijkheid het gehele pad op inclusief het domein al is dit niet direct verplicht. Bij de oude locatie geef je alleen het pad op zonder het betreffende domein ervoor te plaatsen.

Maak met kladblok een nieuwe .txt bestand aan en plaats de onderstaande regel.

Redirect 301 /oudemap/ http://www.websonic.nl/nieuw/


Sla dit bestand dan op als '.htaccess', let op de punt en let op de exacte schrijfwijze.

De naam .htaccess is een extensie en eigenlijk heeft het bestand zelf dus geen naam maar alleen de extensie "htaccess" zoals bijvoorbeeld ".jpg" ".txt" en ".doc". In Windows zal het hernoemen van het bestand echter niet lukken omdat je altijd een bestandsnaam moet opgeven. Het hernoemen zul je in dat geval moeten doen met behulp van bijvoorbeeld een FTP programma. Het bestand plaats je daarna op op je eigen server.

Bezoekers die de map "oudemap" dan bezoeken worden dan automatisch doorgestuurd.

Bestand

Met de bovenstaande manier wordt de gehele map vervangen, het is daarnaast ook mogelijk om alleen een oud bestand door te sturen naar een nieuwe locatie die in dezelfde map of op een andere locatie staat. Dit wordt dan bijvoorbeeld zoals hieronder.

Redirect 301 /mapnaam/oud.html http://www.websonic.nl/mapnaam/nieuw.html

301 Domein redirect

Op een soortgelijke manier kun je ook een domein doorverwijzen (301) naar een nieuw domein zoals ook beschreven staat in een andere htaccess tutorial. Dit is bijvoorbeeld handig op momenten dat er meerdere domeinen moeten doorverwijzen naar een enkel domein (domein.de naar domein.nl). In dat geval kun je de onderstaande code gebruiken.

Options +FollowSymlinks
RewriteEngine On
RewriteCond %{http_host} ^www.websonic.nl [NC]
RewriteRule ^(.*)$ http://websonic.nl/$1 [L,R=301]

Submappen

Wil je voorkomen dat onderliggende mappen ook automatisch worden doorgestuurd dan kun je eventueel de onderstaande oplossing inzetten met RedirectMatch.

Options +FollowSymlinks
RewriteEngine On
RedirectMatch 301 ^/mapnaam/?$ http://www.website.nl/nieuwelocatie.html

302 en 307 redirect

Voorkom in principe het gebruik van een 302 en een 307 redirect, hierboven al even kort genoemd. Hiermee geef je aan naar zoekmachines dat een ingestelde redirect tijdelijk is en dus niet permanent. Stel normaal gesproken altijd een verwijzing in op 301 permanent.