Url-Rewriting, une nouvelle fois dans l'impasse

  • Auteur de la discussion ouiffi
  • Date de début
O
ouiffi
Guest
Bonjour, J'ai un site comme ceci
--http://example.com/competition/

Ce site est tri-lingues et je souhaiterais 2 coup utiliser la réécriture d'url pour avoir 3 adresses distinctes

-http://example.com/coupe-du-monde/
-http://example.com/world-cup/
-http://example.com/idem-en-espagnol/

Je voudrais donc une regle générique qui redirige (virtuellement) ces 3 dossiers vers le dossier "competition".

Ainsi, ensuite, je regarde si l'url contient "coupe-du-monde" ou "world-cup" pour connaitre la langue en cours. L'idéal serait de rajouter le paramètre lang dans l'url , mais la derniere fois quej'avais tenté, cela m'obligeait (à erreur peut être) à mettre un regle de réécriture pour chaque page...Très lourd à gérer.

Ce projet est relativement urgent. J'attends donc avec beaucoup d'interêt votre aide à ce sujet.

Merci d'avance.

Julien
 
O
ouiffi
Guest
Bonjour
Mais quand j'ai déjà des variables dans l'url ca ne marche pas?
il faut donc plusieurs règles?
 
O
ouiffi
Guest
personne ne saurait m'aider?
en effet quand il y a deja des variables, les variables sont toutes ecrasées...
je n'ai plus que la variable lang qui est active...

typiquement voici la fin de mon url
coupe-du-monde-2006/rencontre/index.php?IdRencontre=1
je veux conserver IdRencontre tout en ajoutant $lang=coupedumonde2006

vous voyez mon souci
je veux qqchose de générique (sur mon dernier projet j'ai pres de 100 regles : une pour chaque page)


merci
 
WRInaute occasionnel
tu rajoutes à la fin de ta règle l'option [QSA] pour ajouter les variables précédentes.
ça donnerait ça :
Code:
RewriteRule (fr|en|es)/(.*) /competition/$2?lang=$1 [QSA,L]


(le ,L est pour éviter d'executer les règles suivantes si celle-là a fonctionné, à toi de le virer si tu veux ensuite passer d'autres règles)
 
Discussions similaires
Haut