Ceci peut être effectué en utilisant la directive mod rewrite dans votre fichier .htaccess. Pour effectuer cela, votre fichier .htaccess doit avoir les lignes suivantes à l'intérieur avec une directive par ligne:
RéécrireEngine
RewriteRule ^blog/([0-9]+)/([a-z]+)$ /blog/index.php?year=$1&month=$2 [nc]
EXPLANATION:
RéécrireEngine
La première ligne s'assurera que votre moteur de réécriture est allumé.
RewriteRule ^blog/([0-9]+)/([a-z]+)$ /blog/index.php?year=$1&month=$2 [nc]
La deuxième ligne est expliquée comme suit:
^blog/ - s'assure qu'il regardera le début de la chaîne en commençant par blog
([0-9]+) - recherche une série de nombres de 0-9. Le + à la fin assure qu'il correspondra à des nombres répétés une ou plusieurs fois, c'est-à-dire le cas de 2007.
([a-z]+)$ - recherche une entrée en lettres minuscules. Le + à la fin assure qu'il correspondra à des lettres répétées une ou plusieurs fois, c'est-à-dire le cas de l'arbre. Dans cet exemple, le cas n'aura pas d'importance en raison de ce que nous avons ajouté à la fin de la règle. Le signe dollar à la fin dit simplement à la directive de chercher la fin de la ligne.
/blog/index.php?year=1$&month=2$ - c'est ce que le site Web va traduire en où 1$ est la première entrée reçue, dans ce cas 2007 et 2$ est la deuxième entrée reçue, dans ce cas jan.
[nc] - This stands for "no case" or "non-case sensitive." By having this at the end of the rule, it does not matter what case the input is in. For example, http://www.example.com/blog/2007/JaN réagira comme http://www.example.com/blog/2007/jan.
Cela peut être facilement étendu pour inclure de nombreux types d'entrées en termes plus généraux ou spécifiques en utilisant des expressions régulières (regex/regexp). Pour plus d'informations sur le régex et sur la façon de l'utiliser, veuillez consulter le site suivant:
http://www.regular-expressions.info/tutorial.html
De plus, des informations plus complètes sur la directive mod rewrite peuvent être trouvées à l'adresse suivante:
http://httpd.apache.org/docs/1.3/mod/mod_rewrite.html