Htaccess-redirects

Uit De Vliegende Brigade
Ga naar: navigatie, zoeken

.htaccess-bestanden kun je gebruiken voor redirects. Voorbeelden:

met 'www' naar zonder 'www'

[1]:

RewriteEngine On
   RewriteCond %{HTTP_HOST} !^www.example.com$ [NC]
   RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301]

Eerste regel, RewriteEngine On: Pak de RewriteEngine erbij! We gaan aan de slag!

De onderdelen van de tweede regel:

  • %{HTTP_HOST} is een variabele. In dit geval voor de de host. Dat is hetzelfde als het domein
  • ! is een negatie. Dus niet
  • ^ reguliere expressie voor begin van
  • $ reguliere expressie voor eind van
  • RewriteCond (keyword): De voorwaarde voor rewrite volgt hierna
  • [NC]: Hostname is not case-sensitive

Bij elkaar: RewriteCond %{HTTP_HOST} !^www.example.com$: De voorwaarde voor Rewrite is, dat de host ongelijk is aan www.example.com.

De onderdelen van de derde regel:

  • .: een willekeurig teken
  • .*: 0 of meer herhalingen van willekeurige tekens
  • ^(.*)$: De gevraagde URL (zonder het domein)
  • $1: Substituut voor eerste wildcard-string op deze regel. Er is maar één wildcard-string (namelijk ^(.*)$). Dus $1 verwijst naar de gevraagde URL (zonder het domein)
  • L in [L,R=301]: Dit is het laatste gedeelte voordat de rewrite compleet is
  • R=301 in [L,R=301]: Return a 301 moved permanently to the web-client.

Bij elkaar: Pak de URL (zonder domein). Plak daar www.example.com/ voor. Verwerk dit, en geef aan dat het een 301-redirect betreft.

Zie ook

Bronnen