[Réglé] Redir vers un repertoire niveau inf

Consultez la formation URL Rewriting et sites dynamiques de WebRankInfo / Ranking Metrics


mr_go
WRInaute passionné
WRInaute passionné
 
Messages: 1945
Inscription: 21 Sep 2005

[Réglé] Redir vers un repertoire niveau inf

Message le Mer Mar 08, 2006 16:24

Salut à tous,

mon problème:

je dispose d'un site multiilngue. Concept somme toute banal du style

www.example.com/fr/rep1/rep2/page1.html
www.example.com/en/dir1/dir2/page2.html

Etant donné l'aspect volumineux du site, je séparé les fichiers .htaccess en fonction de la langue. Il existe donc physiquement sur mon serveur un répertoire "fr" et un repertoire "en", avec pour chacun des deux un fichier .htaccess.

Pour des raisons d'optimisation du fichier htaccess relatif au "français", je redirige certains documents de type photo, flash ou pdf dans les langues autres que le français, mais pas les documents en français car par définition, mon document en français se trouve physiquement un répertoire "au dessus" du chemin.

/fr/photo/photo1.jpg doit donc être redirigé vers /photo/photo1.jpg

Bien évidemment je possède dans le fichier .htaccess "français" de mon site de nombreuses regles de réécriture du type

RewriteRule ^rep/fic1.html$ /rep/fic1.php?lang=fr [NC,L]

et en dernier lieu j'ai créé cette clause spéciale pour le français :

#Condition spécifique fr /fr/rep => /rep pour les documents
RewriteRule ^(.+[^/])(.*)$ /$1 [NC,L]


Mon problème est celui ci :

www.example.com/fr/fr/index.html fonctionne avec cette règle...
:'(

Bien entendu je n'ai pas ce problème dans une autre langue.

J'espère avoir été assez clair... :oops:
Quelqu'un aurait une solution ?
Dernière édition par mr_go le Lun Mar 13, 2006 7:57, édité 1 fois.


sunflower
WRInaute discret
WRInaute discret
 
Messages: 121
Inscription: 5 Jan 2006

Re: Site multilingue: Redir vers un repertoire niveau inféri

Message le Sam Mar 11, 2006 17:17

mr_go a écrit:et en dernier lieu j'ai créé cette clause spéciale pour le français :

#Condition spécifique fr /fr/rep => /rep pour les documents
RewriteRule ^(.+[^/])(.*)$ /$1 [NC,L]


Mon problème est celui ci :

www.example.com/fr/fr/index.html fonctionne avec cette règle...
:'


Salut,
Pour faire plus simple, par exemple, une chose comme:

RewriteRule ^fr/(.*)$ $1 [NC,L]

Ca arrange pas mieux ton affaire ? Si ce n'est que pour le fr...
([a-zA-Z_]+ matchera un code de langue)

^(.+[^/])(.*)$ pour info ça matche au moins un caractère puis un caractère différent de '/' puis zéro ou plusieurs caractères (genre 'ab' ça matche)


correiaj
WRInaute passionné
WRInaute passionné
 
Messages: 1110
Inscription: 25 Avr 2005

Message le Sam Mar 11, 2006 19:41

Moi pour les langues, je mets plutot des (fr|es|en) car cela limite l´utilisation des ressources, et limite aussi le match string.


mr_go
WRInaute passionné
WRInaute passionné
 
Messages: 1945
Inscription: 21 Sep 2005

Message le Lun Mar 13, 2006 7:57

Oki ca marche !

Lol, bloqué une demi journée sur ça... j'ai honte ! :D

Effectivement je n'avais pas pensé à rajouter le "fr/" car je pensais que le chemin physique vers le répertoire prenait déjà en compte le /fr...

Ben voualou, merki à tous ;)


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Formation recommandée sur ce thème :

Formation URL Rewriting et sites dynamiques : apprenez comment mettre en place la réécriture d'URL, comment optimiser vos URL et profiter de vos pages dynamiques pour booster votre référencement. Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités