IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Apache Discussion :

URL Rewriting et Multilingues


Sujet :

Apache

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 5
    Points : 2
    Points
    2
    Par défaut URL Rewriting et Multilingues
    Salut à tous !
    J'ai un petit souci pour écrire mes redirections et j'ai besoin de vos lumières.
    Je vous explique rapidement le contexte : je dois faire un site internet multilingues qui a une partie Grand Public (GP) et une partie Professionnel (Pro).
    La partie Professionnel peut contenir X "univers" (j'entends par univers par exemple l'univers de la mode, l'univers de l'automobile,etc...).

    Ce que je voudrais faire et que j'arrive à faire en partie c'est soit :

    1/ Je souhaite me connecter au site GP :
    Je tape l'url http://www.monsite.com/ je suis redirigé automatique sur http://www.monsite.com/fr/ (le français étant la langue par défaut)
    Pour ce faire, j'ai mis dans mon fichier .htaccess :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    RewriteEngine on
     
    # redirection vers une langue si / seul demandé
    RewriteCond %{REQUEST_URI} ^/$
    RewriteRule .* /fr/ [R=301]
    Et après pour info, lorsque je navigue dans le site j'utilise ce principe de règle :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    # page exemple, ex: /en/exemple.html
    RewriteRule ^(fr|en|es)/exemple.html$ exemple.php?l=$1 [QSA,L]
    Pour le site GP, je n'ai pas de soucis mais l'autre partie je comprends rien.

    Je vais essayer d'être clair.

    2/ Je souhaite me connecter au site Pro
    Je tape l'url http://www.monsite.com/mode/ ou http://www.monsite.com/automobile/

    Je voudrais être redigiré sur http://www.monsite.com/mode/fr/ pour prendre le premier exemple.

    Et plus précisément dans mon fichier .htaccess avoir un truc du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    un_préfixe_qui_reconnait_l_univers/(fr|en|es)/exemple.html$ exemple.html?univers=$1&l=$2
    Et donc pouvoir récupérer le paramètre 'univers' et la langue 'l'...

    Et la difficulté pour moi c'est de faire fonctionner ses règles en parallèles, parce que comme je l'ai dit avant ça fonctionne nickel pour le site GP mais je sais que pour faire marcher l'autre aussi va falloir modifier les règles.

    Enfin je sais pas si je suis clair mais c'est le bordel dans ma tête. Ca fait 1 semaine que j'essaie mais là franchement j'en peux plus.

    Mais si quelqu'un peut me filer un petit coup de main je lui en serais reconnaissant.

    Merci d'avance.

  2. #2
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    en gros j'aimerais si je tape http://www.monsite.com/ aller sur http://www.monsite.com/fr/ mais en réalité je pointe sur http://www.monsite.com/index.php?l=fr

    et de même j'aimerais si je tape http://www.monsite.com/auto/ aller sur http://www.monsite.com/auto/fr/ mais en réalité je pointe sur http://www.monsite.com/index.php?univers=auto&l=fr.

    je crois que c'est plus parlant comme ça.

    merci.

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    Bon ben j'ai fait un truc qui est pas forcément tip top mais je le met au cas où quelqu'un aurait un jour ce genre de souci.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    RewriteEngine on
     
    # redirection vers la langue française http://www.monsite.com/fr/ si on tape http://www.monsite.com/
    # ou redirection vers l'univers et la langue française http://www.monsite.com/univers/fr/ si on tape http://www.monsite.com/univers/
     
    RewriteCond %{REQUEST_URI} ^(/[0-9A-Za-z-]{3,})?/$
    RewriteRule .* %1/fr/ [R=301]
     
    RewriteRule ^([0-9A-Za-z-]{3,})?/?(fr|en|es)/$ index.php?univers=$1&l=$2 [QSA,L]
    Le principe est que mes langues sont définies sur 2 caractères et que pour ne pas partir en boucle infinie je ne prend en compte l'univers que si il a au minimum 3 caractères.

    Si quelqu'un a mieux je suis preneur. A+

Discussions similaires

  1. [Débutant]infos ds session sans cookie ? url rewriting ?
    Par Satanas_et_diabolo dans le forum ASP
    Réponses: 8
    Dernier message: 10/10/2006, 17h13
  2. url rewriting
    Par olive.m dans le forum Apache
    Réponses: 3
    Dernier message: 17/06/2005, 02h01
  3. .htaccess - url rewriting, besoin de conseils
    Par giminik dans le forum Apache
    Réponses: 2
    Dernier message: 25/04/2005, 20h18
  4. Activer l'url rewriting
    Par Otaugames dans le forum Apache
    Réponses: 2
    Dernier message: 09/03/2005, 14h58
  5. Url Rewriting / htaccess
    Par bisi dans le forum Apache
    Réponses: 4
    Dernier message: 25/07/2004, 22h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo