.htaccess redirects instellen

Hoewel cPanel zelf ook een tool heeft om redirects direct vanuit deze omgeving in te stellen, kan het soms handig zijn om deze handmatig in het .htaccess bestand te plaatsen.


.htaccess bestand openen

Om het .htaccess bestand te openen kun je onderstaande stappen volgen:

  1. Log in op het cPanel account
  2. Klik links in het menu op de File Manager
  3. Navigeer naar de map waar het domein in uit komt. Meestal is dit de public_html map, of in het geval van een subdomein de map van het subdomein zelf.
  4. Klik rechtsboven op meer opties > verborgen bestanden tonen
  5. Selecteer het .htaccess bestand en klik bovenin op 'Edit/Bewerken'

Is er nog geen .htaccess bestand aanwezig? Dan kun je deze zelf aanmaken door een nieuw bestand toe te voegen met deze naam.


Redirecten van urls

Redirect 301 /oldpage.html http://www.example.com/newpage.html
Redirect 301 /oldpage2.html http://www.example.com/folder/

Als deze niet werkt, controleer dan met de onderstaande website waar het mis gaat (plak de volledige .htaccess file en de niet werkende URL in de invulvelden): 

http://htaccess.madewithlove.be/


Houd rekening met:

  • Hoe hoger in de .htacces, hoe eerder deze wordt uitgevoerd. Plak je custom regels dus ook bovenaan indien deze hogere prioriteit hebben.

Redirecten van urls met speciale tekens

Speciale tekens (hexadecimale tekens) als ? # $ % ^ & * in de URL zullen niet werken bij het redirecten. In die gevallen voeg je NE toe aan het eind van de rewrite regel, bijvoorbeeld alle pagina's in de abc map:

RewriteRule ^abc\/(.+)$ http://www.example.com/index.php#first [L,R=301,NE]

Redirect voorbeelden oud domein naar nieuw domein

Redirect is ingesteld op domein dat verwijst van http://www.domeinoud.nl/voorbeeld.html , welke moet redirecten naar https://www.domein.nl/voorbeeld/ Alle andere pagina's moeten uitkomen op de homepage van het nieuwe domein.nl

RewriteEngine on
Options +FollowSymLinks
Redirect 301 /voorbeeld.html https://www.domein.nl/voorbeeld/
RewriteRule (.*) https://www.domein.nl/ [R=301,L]

Als er nog bezoek binnenkomt op oude domeinnaam

RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www\.)?ouddomein\.nl [NC]
RewriteRule ^(.*)$ http://www.nieuwdomein.nl/$1 [L,R=301,NC]

Redirect van non-www naar www

Als je wilt dat alle bezoekers op jouw www.domein.nl in plaats van op domein.nl uitkomen, gebruik dan in de .htaccess de volgende regels:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^domein.nl[NC]
RewriteRule ^(.*)$ https://www.domein.nl/$1 [L,R=301]

Alle verkeer omleiden naar https

Zet in je .htaccess de volgende code bovenaan:

RewriteEngine on
RewriteRule ^.well-known - [L]
RewriteEngine on
RewriteCond %{HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L]

Redirect na wijziging domeinnaam van website

Indien je site blijft staan, maar moet luisteren naar een andere domeinnaam gebruik dan de volgende code in je .htaccess

RewriteEngine On
RewriteRule ^(.*)$ https://www.nieuwdomein.nl/$1 [L,R=301,NC]

Redirect niet bestaande links naar index.php

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

Redirect alias domein naar submap

Om een domein dat als alias toegevoegd is door te sturen naar een map binnen het hoofddomein kun je onderstaande code gebruiken

RewriteCond %{HTTP_HOST} ^example\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.example\.com$
RewriteRule (.*) https://www.example2.com/submap/ [R=301,L]

Om een domein dat als alias is toegevoegd te tonen in een submap met dat domein:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^domein.com$ [NC,OR]
RewriteCond %{HTTP_HOST} ^www.domein.com$
RewriteCond %{REQUEST_URI} !submap/
RewriteRule (.*) /submap/$1 [L]
Heeft dit artikel je goed geholpen? Dank voor je feedback! Er is een probleem opgetreden bij het verzenden. Probeer opnieuw.