YACS Le livre de Yacs Guide d'installation et de mise à jour

PrécédentSuivantIndex

Installation multi-site

Yacs offre plusieurs possibilités pour faire collaborer plusieurs sites Yacs.

Pourquoi faire ?

Les raisons pour vouloir créer un Yacs multi-site sont diverses, en voici quelques exemples (mais la liste est loin d'être complète) :

  • avoir un compte de membre unique qui permet d'accéder à plusieurs sites
  • pouvoir faire une recherche de texte sur plusieurs sites
  • utiliser les mêmes catégories et pouvoir afficher tous les articles des différents sites concernant une de ces catégories
  • sur la page d'accueil de chacun des sites, pouvoir afficher la liste des publications récentes des autres sites
  • pouvoir appeler par code Yacs un article sur un autre site
  • pouvoir réutiliser des images, des fichiers, des commentaires,etc. d'un site dans un autre site
  • ...

Yacs offre plusieurs solutions pour permettre d'obtenir certaines de ces fonctionnalités inter-sites.

Partage de la table des membres

Il y a une solution native dans l'installation de Yacs qui permet à un site Yacs d'utiliser la même table d'utilisateurs qu'un autre site Yacs.

Il suffit pour cela d'aller sur l'un des sites et via le Panneau de contrôle > Configuration > Paramètres système > Base de données > Rangement particulier pour les profils d'utilisateur,

lui indiquer les infos nécessaires pour qu'il puisse utiliser la table des utilisateurs d'un autre site Yacs.



On évite ainsi aux membres de multiplier leurs comptes pour accéder à ces sites.

Attention aux version de Yacs installées sur chaque serveur. Si elle sont différente, s'assurer qu'elles fonctionnent avec la même structure de table membre.

Partage des nouvelles (news)

La création de liens RSS de syndication permet aux sites de s'échanger les annonces de leurs publications récentes.

L'intégration d'un contenu syndiqué est possible, très simplement, avec le code Yacs   [newsfeeds=<url>] (voir la page widgets dans l'aide en ligne des codes Yacs).

Un site unique hébergeant plusieurs "sous-sites"

Un seul site Yacs avec une seule base de données. Des sections mères pour chaque "sous-site" avec des templates différents.

En cas de noms de domaines différents, voici la méthode utilisée JJ :

  • Installation d'un yacs dans un répertoire dédié de l'hébergement physique (peu importe le nom de domaine principal)
  • Achats de plusieurs noms de domaine chez un bon registrar
  • Redirection de chaque url vers les serveurs DNS de l'hébergeur
  • Dans le management de l'hébergeur, création d'une prise en charge DNS pour chaque domaine, puis création d'un hôte virtuel pour faire pointer chacun vers un dossier spécifique. Lors de cette étape, il faut indiquer un répertoire physique de l'hébergement, et depuis le chemin path to root : bien simple, il suffit pour éviter tout problème de diriger vers www/autre_repertoire/yacs/sections/view.php&id=xxx (numéro de section)

Vu que l'hébergeur physique prend en charge les DNS du domaine, c'est totalement transparent pour tes visiteurs.

C'est bien pour une dizaine de Yacs. Au-delà, la taille de la base risque d'être problématique (par exemple pour toutes les opérations de restauration éventuelle, surtout en mutualisé).

Une base unique pour plusieurs sites

Dans le cas de serveur assez proches, une stratégie organisée autour d'une seule base de données peut être mise en place comme suit :

  • une seule base de données partagées entre les sites
  • une instance de Yacs par serveur virtuel géré
  • chaque instance pointe sur la même base de données, mais peut disposer d'un thème visuel différent, voire de règles de configuration spécifiques
  • choisir une section différente pour la page d'accueil de chaque site virtuel

Les onglets de navigation, les catégories, les usagers sont partagés entre tous les sites.

Pour éviter les onglets de navigation communs à tous les sites : chaque site a son template. Il ne faut pas confier la construction de la navigation aux fonctions de base, mais les construire à part, éventuellement à partir d'un article dédié pour chaque site dans les pages globales, ou directement dans le template.

Un article créé sur l'un des sites, s'il est accédé d'un autre site via son id, apparaîtra dans cet autre site de manière complètement intégrée (c'est à dire avec le thème de l'autre site et pas avec son thème "d'origine").

Pour éviter que cela soit considéré par les moteurs de recherche comme du Duplicate Content, une solution consisterait à mémoriser dans quel site la page a été créée. Lorsque le moteur Yacs génère la page à partir d'un autre site que son site d'origine, il faudrait alors ajouter la balise meta qui va bien pour indiquer aux moteurs de recherche qu'il s'agit d'une page dupliquée à ne pas indexer.

Par contre, cette solution pose des problèmes avec les images qui sont stockées physiquement dans un sous-dossier /image/ du dossier d'installation de l'un des sites Yacs. Lorsque la page qui utilise l'image est appelée à partir d'un autre site Yacs, elle est recherchée dans le dossier image de cet autre site et n'est donc pas trouvée...

Voir aussi...

Yacs multi-sites

PrécédentSuivantIndex