URL Rewriting pour le multilingue

2 réponses
AuteurMessage

mirage |
Modérateur

Photo de mirage

Inscrit le : 04/05/2005

# Le 04/01/2008 à 21:29

J'ai un petit problème que je n'arrive pas à résoudre : j'ai un site multilingue où la langue est passée en paramètre dans l'URL pour permettre la traduction (du style site.com/fr/).

Mon .htaccess est le suivant :

RewriteRule ^(fr|en)\/(.*)$ /$2?lg=$1 [QSA,L]
RewriteRule ^(fr|en)$ /?lg=$1 [QSA,L]


Sauf que j'ai un petit problème quand je tente d'accéder à un répertoire sans mettre le / final (site.com/fr/dossier), l'URL devient site.com/dossier/?lg=fr et j'aimerais bien que ça ne le fasse pas et qu'elle reste site.com/fr/dossier (au pire site.com/fr/dossier/, c'est pas important) !

J'ai cherché sur le net mais je n'ai rien trouvé de concluant, je me dis que c'est peut être une option d'Apache qui fait ça mais je n'ai pas trouvé laquelle... quelqu'un a-t-il une idée ?

Bool | Olivier
Modérateur

Photo de Bool

Inscrit le : 09/05/2005

# Le 04/01/2008 à 21:41

Pour ce genre de cas j'utilise toujours la même méthode pour ma part : tu crées un dossier "fr" et un dossier "en" dans lesquels tu mets les règles de rewriting qui ne concernent qu'eux (quitte à faire un lien symbolique entre les deux dossiers).

C'est souvent plus simple pour s'y retrouver, ça permet de ne pas avoir à jongler avec 36 exceptions, et surtout ça évite à Apache de se coltiner une centaine d'expressions régulières avant de traiter la moindre petite image, css, ou page php du site.

daevel : infogérance et conseilOuvrir dans une nouvelle fenetre || moiOuvrir dans une nouvelle fenetre

mirage | Vincent
Modérateur

Photo de mirage

Inscrit le : 04/05/2005

# Le 04/01/2008 à 21:44

Je n'avais pas pensé à cette méthode, je vais faire ça. Faut juste que je trouve comment empêcher l'accès s'il n'y a pas de /lg/ dans l'url !

Merci Bool

Répondre

Vous ne pouvez pas participer au forum, car votre inscription n'a pas été validée. Pour vous faire valider en tant que Membre, cliquez ici.

© MHN - Tous droits réservés | CNIL N°844440 | 24/11/2024 14:22:38 | Généré en 7.93ms | Contacts | Mentions légales |