Oui c'est absolument normal:
RewriteRule ^articles/([0-9]{4})/[a-z0-9-]+/$ /articles/details.php?id_article=$1 [QSA,L]
Ta règle indique:
1) commence par articles/
2) suivit de 4 chiffre (qui sera $1 gâce aux parenthèses)
3) suivit d'un /
4) suivit d'une suite de lettre, chiffre ou "-" autant que tu veux (1 ou plus)
5) suivit d'un /
6) fin!
Dans ce cas, tu ne peux matcher que quelque chose du genre http://site.com/articles/[1234]/[nimporte-quoi-osef]/
(sans les [], c'est juste pour faire des groupes )
Donc si ton url contient "details" (site.com/articles/details/1234/titre-article/), celui ci ne rentre pas dans la condition
Si tu veux, tu peux faire ceci:
RewriteRule ^articles/(details/)?([0-9]{4})/[a-z0-9-]+/$ /articles/details.php?id_article=$2 [QSA,L]
en gros cela rajoute une règle:
1) commence par articles/
2) suivit de details/ (facultatif, grâce au "?", et qui sera $1 a cause des parenthèses, indispensable pour rendre "details/" facultatif)
3) suivit de 4 chiffres (qui sera $2 (du coup))
4) suivit d'un /
5) suivit d'une suite de lettre, chiffre ou "-" autant que tu veux (1 ou plus)
6) suivit d'un / (et d'ailleurs ici je metterai plutot /?, pour rendre le slash final facultatif, mais c'est un choix )
7) fin!
A+
Partager