Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Général Conception Web > Hébergement > Domaines
Domaines Forum d'entraide sur les noms de domaines pour les sites Web et sur les registars
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 07/01/2008, 21h35   #1
Invité de passage
 
Inscription : octobre 2007
Messages : 6
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 6
Points : 1
Points : 1
Par défaut 1 serveur dédié, 1 appli web, 4 ndd et 4 langues

Bonjour,

J'ai un projet d'appli web php5/msql multilangue. J'en suis à la phase de conception et de la modélisation UML. Et j'ai besoin de me projeter un peu en avant pour ne pas me tirer une balle dans le pieds en commettant une erreur de conception. Mon problème, je crois, viens surtout du fait que je n'ai jamais administré de serveur dédié ...

Avant la question, voici le problème :

- 1 seul serveur LAMP,
- 1 seule appli
- 4 noms de dommaine : mondomaine.fr, mondomaine.co.uk, mondomaine.de et mondomaine.nl correspondant aux 4 langues du site.

J'envisage pour l'instant d'utiliser des fichiers langues inclus pour traduire l'interface (tableau associatif). Le contenu dans chaque langue étant stocké dans la BDD.


Si j'ai bien assimilé ce que j'ai pu lire, une solution est d'utiliser la fonction Vhost en éditant le fichier httpd.conf . Ainsi, j'indique dans quel répertoire se trouve chaque version du site :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<VirtualHost www.mondomaine.fr>
ServerAlias mondomaine.fr 
DocumentRoot /var/www/mondomaine.fr/
ServerName www.mondomaine.fr
TransferLog /var/www/mondomaine.fr/access.log
</VirtaulHost>

<VirtualHost www.mondomaine.de>
ServerAlias mondomaine.de 
DocumentRoot /var/www/mondomaine.de/
ServerName www.mondomaine.de
TransferLog /var/www/mondomaine.de/access.log
</VirtaulHost>

<VirtualHost www.mondomaine.nl>
ServerAlias mondomaine.nl 
DocumentRoot /var/www/mondomaine.nl/
ServerName www.mondomaine.nl
TransferLog /var/www/mondomaine.nl/access.log
</VirtaulHost>
Et il me faudrait ensuite copier les scripts dans chacun de ces repertoires ....

Une méthode de la classe langue permet de définir une variable $langue en fonction du ndd ( avec utilisation de $SERVER["HTTP_HOST"] )
$langue est utilisée comme clé du tableau associatif pour obtenir l'affichage de l'interface, mais aussi pour récupérer la bonne version du contenu dans la BDD.


Cette solution est elle la bonne ?
D_Kupp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/01/2008, 18h46   #2
Invité régulier
 
Inscription : janvier 2007
Messages : 9
Détails du profil
Informations personnelles :
Âge : 27
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : janvier 2007
Messages : 9
Points : 6
Points : 6
Si tes scripts sont les mêmes, pourquoi les recopier quatre fois?

Lors d'une évolution de ton appli (par exemple, une faille de sécurité grave), tu seras obligé de répercuter le correctif sur chacune des versions...


Pour moi, le plus simple serait de créer un bête script test_langue.php, dans lequel tu testerais l'URL, en récupérant la dernière extension de ton ndd (avec par exemple un $lang=array_pop( explode( ".", $_SERVER["HTTP_HOST"])).

Tu fais ensuite simplement un switch( $lang) pour trouver la langue qui correspond...

Ensuite, pour stocker les textes, tu as deux choix:
-> soit tu les récupères à chaque page (un accès à la bdd par page)
->soit tu les récupères tous sur la page d'accueil et tu les stockes en variable de session (peut être gros à stocker si tu as beaucoup de texte )

Enfin, il te suffira d'inclure ce script soit sur la page d'index de ton appli (si tu choisis l'option tout en session), soit sur chacune de tes pages (si tu choisis le chargement à chaque fois).
Balashov est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/01/2008, 02h02   #3
Invité de passage
 
Inscription : octobre 2007
Messages : 6
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 6
Points : 1
Points : 1
Citation:
Envoyé par Balashov Voir le message
Si tes scripts sont les mêmes, pourquoi les recopier quatre fois?

Lors d'une évolution de ton appli (par exemple, une faille de sécurité grave), tu seras obligé de répercuter le correctif sur chacune des versions...
C'est bien ce qui me chiffone avec la (mauvaise) solution que je décris plus haut .... Dupliquer 4 fois les mêmes scripts dans 4 répertoires différents sur le serveur correspondant aux 4 langues, ça ne me semble pas très propre...



Citation:
Envoyé par Balashov Voir le message
Pour moi, le plus simple serait de créer un bête script test_langue.php, dans lequel tu testerais l'URL, en récupérant la dernière extension de ton ndd (avec par exemple un $lang=array_pop( explode( ".", $_SERVER["HTTP_HOST"])).

Tu fais ensuite simplement un switch( $lang) pour trouver la langue qui correspond...

Ensuite, pour stocker les textes, tu as deux choix:
-> soit tu les récupères à chaque page (un accès à la bdd par page)
->soit tu les récupères tous sur la page d'accueil et tu les stockes en variable de session (peut être gros à stocker si tu as beaucoup de texte )

Enfin, il te suffira d'inclure ce script soit sur la page d'index de ton appli (si tu choisis l'option tout en session), soit sur chacune de tes pages (si tu choisis le chargement à chaque fois).
C'est ce que j'avais l'intention de faire :

Citation:
Une méthode de la classe langue permet de définir une variable $langue en fonction du ndd ( avec utilisation de $SERVER["HTTP_HOST"] )
$langue est utilisée comme clé du tableau associatif pour obtenir l'affichage de l'interface, mais aussi pour récupérer la bonne version du contenu dans la BDD.
Pour reformuler mon problème : comment heberger les 4 NDD sur le serveur pour une seule appli ? la gestion des langues (1 langue/NDD) au niveau de l'appli, ça devrait aller ...

Merci pour le coup de main
D_Kupp est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 14h15.


 
 
 
 
Partenaires

Hébergement Web