Bonjour à tous,
Je mets actuellement en place un système d'URL rewriting de façon à assurer une gestion multilangue propre de MediaWiki (utilisation d'un unique dossier de fichiers mais de plusieurs bases de données avec certaines tables en commun), mais il s'avère qu'une règle pose problème.
Il s'agit de :
Code :
- RewriteRule ^fr/(.+)$ /wiki/$1&lang=fr
- RewriteRule ^en/(.+)$ /wiki/$1&lang=fr
|
J'aimerais que les URL du type wiki/fr/{n'importe quoi} soient transformées en wiki/{n'importe quoi}&lang=fr et de même pour les pages en anglais.
Et pourtant, le code ci-dessous ne fonctionne pas du tout, à en juger par l'erreur 404. Ce n'est pas un problème avec le mod rewrite, puisque toutes les règles situées plus haut fonctionnent. Par ailleurs, le problème n'est pas lié au règles sus-dites, puisqu'en les enlevant cela ne change rien. De plus, ce n'est pas un problème lié aux répertoires, puisque les règles plus haut sont basées sur la même architecture (ex : RewriteRule ^fr/images/(.+)$ /wiki/images/$1). Enfin, le problème n'est pas lié à la finalité de la manœuvre puisque la « substring » nommée ici {n'importe quoi} correspond en fait toujours à une URL de la forme index.php?title=Machin ou index.php?title=Truc&chose=bidule, enfin bref, l'utilisation du & se justifie et n'est pas la cause de l'erreur 404.
Ayant épuisé toutes les explications qui me sont venues à l'esprit, je me permets donc de solliciter votre aide.
En espérant vous avoir fourni assez d'informations pour traiter ce casse-tête, je vous remercie d'avance de votre réponse !