fr.domaine.com et en.domaine.com avec structure unique

Discussion dans 'Développement d'un site Web ou d'une appli mobile' créé par Antoine.B, 20 Mars 2009.

  1. Antoine.B

    Antoine.B WRInaute discret

    Inscrit:
    8 Avril 2006
    Messages:
    132
    J'aime reçus:
    0
    Hello Folks !

    Comment faire proprement un site multilangue de la sorte :

    en.example.com pour la version anglaise et fr.example.com pour la version francaise, avec la particularite d'avoir une structure de fichier unique (par exemple dans le www.example.com) et des fichiers langues contenant des defines (php).

    Par exemple, en appelant la page fr.example.com/ma-page.php, ca fait apparaitre le contenu de la page www.example.com/1.php avec inculsion de la page de langue francaise (par exemple fr.php). Et de meme, en appelant en.exemple/my-page.php ca fait toujours apparaitre le contenu de www.example.com/1.php mais avec cette fois l'inclusion de la page de langue anglaise (par exemple en.php).

    Notons que :
    - l'on ne doit pas pouvoir acceder directement a www.example.com/1.php
    - les pages dans fr.example.com on des noms differents que de celles se trouvant dans en.example.com (ma-page.php et my-page.php renvoie la meme page avec une langue differente).

    Un peu casse tete pour moi tout ca ... quelqu'un a deja fait cette experience ?
     
  2. detectimmobilier

    detectimmobilier WRInaute passionné

    Inscrit:
    21 Février 2009
    Messages:
    2 309
    J'aime reçus:
    0
    Bonjour,
    Tu peux au choix utiliser des sous domaines en.tonsite.com ou des dossiers tonsite.com/en/tes pages en anglais.htm
     
  3. Antoine.B

    Antoine.B WRInaute discret

    Inscrit:
    8 Avril 2006
    Messages:
    132
    J'aime reçus:
    0
    Bonjour,

    Je sais deja ce que je veux, des sous-domaines, la problematique reside seulement dans le fait d'avoir ces sous-domaines "virtuels" (cad qu'il soient vides ou presque) et que la structure ce trouve dans un sous-domaine separe (comme www ou /).
     
  4. dorian53

    dorian53 WRInaute passionné

    Inscrit:
    10 Avril 2005
    Messages:
    2 240
    J'aime reçus:
    0
    Si vous pouviez éviter de citer 50 lignes pour répondre 2 mots. Surtout quand vous répondez au sujet précédent juste au dessus. Merci, ça sera plus agréable à libre.

    Tu parles au niveau du système de fichier coté serveur ?
    Rien ne t'empêche d'avoir tes templates et librairies dans un répertoire commun que tu utilises et appelles au niveau de chaque sous-domaine (vhost).

    Code:
    /var/www/html/lib
    /var/www/html/en
    /var/www/html/fr
    Autre solution tu rediriges tous tes sous-domaine vers même répertoire, et selon l'host tu utilises différentes constantes qui te permettent de définir la langue.

    Code:
    si en.example.com > LANG_ENG
    si fr.example.com > LANG_FR
    Après il faut que tu construises tes pages selon la langue.
     
  5. Antoine.B

    Antoine.B WRInaute discret

    Inscrit:
    8 Avril 2006
    Messages:
    132
    J'aime reçus:
    0

    Merci, et comment faire techniquement la "redirection" ? (entre guillemets car c'est pas vraiment une redirection c'est plutot un directive ou une reecriture j'imagine)
     
  6. dorian53

    dorian53 WRInaute passionné

    Inscrit:
    10 Avril 2005
    Messages:
    2 240
    J'aime reçus:
    0
    Si tu utilises Apache.

    Lorsque tu vas définir ton virtualhost il faut que tu regardes les 2 directives suivantes :

    - servername
    - serveralias

    Tu es autorisé à indiqué plusieurs domaines (et sous-domaines) différents par vhost.
    C'est à dire que des domaines différents peuvent utiliser le même répertoire (où est stocké ton site).

    http://httpd.apache.org/docs/2.2/fr/vhosts/examples.html