URL vriendelijke pagina's maken

Nadat je zeker weet dat Apache geconfigureerd is met de module mod_rewrite, dat er AllowOverride All bij <directory> in de httpd.conf staat en dat je toegang hebt tot .htaccess kunnen we gaan beginnen een Rewrite regel in de .htaccess file te schrijven.

Een mod_rewrite regel moet er als volgt uit zien:

RewriteEngine On
RewriteRule ^php/tutorials/(.*)/(.*)/ php/tutorials.php?cat=$1&id=$2


RewriteEngine On
Deze eerste regel start de module mod_rewrite.

RewriteRule
Hier start je de rewrite regel

^php/tutorials/(.*)/(.*)/
Hier geef je aan dat waneer de url www.joudomein.nl/php/tutorials/iets/iets/ wordt opgevraagd, de eerste en tweede (.*) worden doorgegeven in het tweede gedeelte van de RewriteRule.

php/tutorials.php?cat=$1&id=$2
Dit is het laatste gedeelte. $1 is de eerste (.*) en $2 is de tweede (.*) van het vorige gedeelte.

Wanneer je nu dus het URL adres http://www.joudomein.nl/php/tutorials/5/10/ aanvraagt, zal mod_rewrite ervoor zorgen dat je onzichtbaar (vriendelijk) wordt 'doorgestuurd' naar http://www.joudomein.nl/php/tutorials.php?cat=5&id=10.

Ook kun je hier later meer mee spelen door in plaats van id- en categorie nummers werkelijke namen door te spelen in je url. Laten we zeggen dat 3 -> berekeningen is. Als je je website dan opvraagt als http://www.joudomein.nl/php/tutorials/berekeningen/43/ lijkt dit alweer een stuk beter dan dat het alleen maar nummers zijn. Ik zou dit in een later stadium proberen want eerst wil je natuurlijk gewoon dat het werkt zonder moeilijk te doen!

Dit is eigenlijk alles. Onvoorstelbaar niet? Toch kunnen er zich nog enkele problemen voordoen waar ik toen der tijd ook tegenaan liep. Ga naar het volgende hoofdstuk!

« Lees de omschrijving en reacties

Inhoudsopgave

  1. Voorbereidingen
  2. URL vriendelijke pagina's maken
  3. Voorkomende problemen

PHP tutorial opties

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.