30px; }
Welcome Visitor:

Multisite

Onglets principaux

Forums: 

J'ai la possibilité de faire un multi site. Pourquoi ? Parce que j'ai les noms de domaines suivant :

ktsdancing

ldanim

maxevilletv

les aventures partagees

video annuaire

nancy volley

Et je ne peux pas mettre tous ces noms de domaine sur maxevilletv. Il faudrait soit acheter un script drupal sur chaque nom de domaine, cela voudrait dire plus de 1000 € par an d'abonnement pour tout ca. Non merci. Alors tentons ce module multi-site.

 Cet article explique comment ajouter un nom de domaine différent à votre installation Drupal. Je présume que vous avez un hébergement partagé, que vous utilisez cpanel et que vous avez déjà une installation Drupal qui fonctionne.

Nom de domaine

  • Avec votre fournisseur de noms de domaine préféré, achetez un nom de domaine.
  • Normalement, si tout va bien vous aurez des résultats en environ 6 heures!

Dans cpanel

  • Dans cpanel, choisissez DOMAINE
  • En choisissant DOMAINES ADDITIONNELS choisissez Créer un domaine additionnel
  • Saisir les information demandées :
  • nom de domaine : exemple.com
  • choisir un nom d'usager et un mot de passe pour le transfert ftp
  • laisser le répertoire principal de document vide.
  • Revenir à l'accueil de Panel Box, choisissez "VOS FICHIERS"
  • Effacer le dossier créé par cpanel correspondant au nom de domaine
  • Créer un dossier dans public_html/sites/ au nom du domaine (exemple.com)
  • Copier le fichier default.settings.php du dossier default dans le dossier créé et rennomez-le setting.php
  • Créer un dossier files dans le dossier exemple.com
  • Changer les permission pour les deux items à 777 (pas sûr que c'est nécessaire, drupal devrait le faire)
  • Créer une base de données pour le nouveau site drupal
  • Aller au domaine créé, installez drupal
  • Remettre settings.php à 644 et files à 755

 

Chaque site créé utilise le même code de Drupal mais dispose de sa propre configuration et de ses propres fichiers, stockés dans un sous-répertoire dédié du répertoire /sites. Par exemple, dans le cas d’un premier site sur le domaine www.bonjour.com et d’un second site sur www.bonsoir.com, il faudra créer pour chacun d’entre eux un sous-répertoire dans le répertoire /sites. Chacun de ces répertoires devra contenir un fichier de configuration nommé settings.php.

L’astuce réside dans le nom du répertoire. Si vous voulez que vos sites possèdent des noms de domaines différents, il suffit de donner à chaque répertoire le nom du domaine correspondant. Par exemple, dans le cas des 2 sites www.bonjour.com et www.bonsoir.com, les répertoires seront nommés /sites/bonjour.com et /sites/bonsoir.com. Si vous ajoutez les “www.” dans le nom du répertoire, seules les URLs du type http://www.bonjour.com seront accessibles et pas celles du type http://bonjour.com.

Si vous ne souhaitez pas utiliser des noms de domaine différents, mais simplement utiliser des sous-domaines ou des sous-répertoires de votre site principal, il suffit de nommer autrement les répertoires en question. Pour utiliser un sous-domaine du type http://travail.bonjour.com, il faut nommer le répertoire en /sites/travail.bonjour.com. Si vous voulez utiliser un sous-répertoire pour une URL du type http://bonjour.com/travail, il faut nommer le sous-répertoire dans sites de la manière suivante : /sites/bonjour.com.travail.

Dans tous les cas, chaque répertoire contient son propre fichier settings.php. Et chaque site ainsi configuré peut avoir ses propres modules et thèmes, en plus de ceux se trouvant dans les dossiers /modules et /themes standard. Pour cela, il suffit de créer des répertoires /modules et /themes dans le répertoire de configuration de chaque site. Par exemple, le répertoire /sites/bonjour.com/ pourra contenir, en plus de son fichier settings.php, son propre dossier /themes/nom_du_theme/, son propre dossier /modules/nom_du_module/, etc.

Pas-à-pas : installer d’abord le premier site

  1. Faire pointer les noms de domaine à utiliser sur l’espace d’hébergement et choisir quel site (et donc quel nom de domaine) sera le site principal.
  2. Télécharger, décompresser et installer Drupal comme s’il n’y avait qu’un seul site, sur le nom de domaine principal retenu.
  3. Ne pas lancer maintenant l’installation automatique et, par conséquent, ne pas utiliser la configuration /sites/default
  4. Créer tout de suite le sous-dossier du 1er site dans le répertoire /sites (en utilisant le nom de domaine principal, il en faut bien un pour commencer !) et y copier le contenu du dossier /sites/default (au niveau des permissions, ce dossier devra être accessible en écriture, mais seulement pendant l’installation). Drupal est prêt.
  5. Lancer l’installation automatique en se rendant sur l’URL du site (nom de domaine ou sous-répertoire d’installation du nom de domaine ou adresse IP du serveur). Se laisser alors guider et répondre aux questions : Drupal vous demandera sûrement de renommer le fichier default.settings.php en settings.php dans le répertoire de votre 1er site et de permettre provisoirement l’écriture dans ce fichier et dans son dossier. Ne pas renommer directement default.settings.php mais en faire une copie dans le même répertoire et ensuite renommer cette copie en settings.php, sans quoi l'installe se bloquera au moment de la connexion à la base de données !!
  6. Au moment de saisir les identifiants MySQL, ne pas modifier le préfixe des tables dans les Options Avancées puisque ce premier site sera le site par défaut
  7. Dès que l’installation est terminée, il est possible de publier du contenu sur ce premier site.

Pas-à-pas : installer ensuite le second site

  1. Modifier la configuration Apache pour que votre nouveau site pointe bien vers Drupal... Dans le cas d'un sous-dossier il faudra ajouter un lien symbolique dans le dossier drupal avec le nom de votre sous-dossier : cd /usr/share/drupal6; ln -s . sousdossier
  2. Créer le sous-dossier du 2ème site dans le répertoire /sites en respectant les règles de nommage citées plus haut (nom de domaine distinct, sous-domaine ou sous-dossier) et y copier le contenu du dossier /sites/default (comme pour le premier site, au niveau des permissions, ce dossier devra être accessible en écriture, mais seulement pendant l’installation)
  3. Lancer l’installation automatique en se rendant sur l’URL du deuxième site (nom de domaine distinct, sous-domaine ou sous-dossier). Se laisser guider et répondre aux questions : là aussi, Drupal vous demandera sûrement de renommer le fichier default.settings.php en settings.php dans le répertoire de votre 2ème site et de permettre provisoirement l’écriture dans ce fichier et dans son dossier. Si Drupal indique que l’installation est déjà faite, c’est qu’il utilise une définition de site déjà existante, ou celle par défaut. Vérifier à ce stade la concordance entre l’URL et ce qui est défini dans le dossier /sites.
  4. Au moment de saisir les identifiants MySQL, aller dans les Options Avancées et modifier le préfixe des tables ; si cela n’est pas fait, la première installation sera écrasée par celle-ci
  5. Si tout se déroule normalement, vous avez une plateforme multi-sites dans laquelle Drupal gère tout seul les différentes URL en leur associant la bonne configuration. Il vous suffit de vous rendre sur chaque URL pour vous en rendre compte. Voilà, c’est tout. Durée de l’opération : 10 minutes à peine.

Installez autant de sites que vous voulez !

Pour installer un nouveau site, il vous suffit de répéter les opérations effectuées ci-dessus pour installer le second site. Vous pouvez répéter l’opération autant de fois que vous voulez et gérer ainsi de très nombreux sites, complètement différents, tant au niveau du design qu’au niveau du contenu, avec une seule et même installation de Drupal. Que du bonheur, non ?

Toujours installer Drupal en multi-sites

Pour finir, je vous recommande très fortement de toujours installer Drupal de cette manière, même si vous ne voulez exploiter ou mettre en oeuvre qu’un seul site. Cela vous permettra, si un jour vous changez d’avis, d’ajouter des sites à votre plateforme Drupal sans avoir à tout recommencer, et ce, très facilement. De plus, faire une installation multi-sites ne prend pas plus de temps et n’est pas plus compliqué que faire une installation uni-site. Par conséquent, si vous voulez n’installer qu’un seul site, vous n’avez qu’à faire exactement ce qui a été décrit dans ce tuto, sauf la dernière étape visant à créer un second site. Vous la ferez le jour où vous en aurez besoin, ou alors vous ne la ferez jamais, ça ne changera rien à votre site. Mais si un jour ça vous prend, en 2 minutes c’est fait.

PS : Ce tutoriel a été testé avec succès sur un hébergement Gandi. Il est publié ici sous la forme d'un wiki et a du coup été modifié de diverses manières par plusieurs utilisateurs. Pour lire le tutoriel original de Lektum, rendez-vous sur Lektum.info.

Ce document est une traduction tirée du fichier readme de Drupal.

Il est possible de faire fonctionner plusieurs sites avec une même installation (comprenez les mêmes fichiers PHP) de Drupal.

Les configurations supplémentaires sont créées dans des sous-répertoires du répertoire ‘sites’.
Chaque sous-répertoire doit contenir un fichier ‘settings.php’ qui définit les paramètres de configuration.
Une façon simple de créer des sites supplémentaires est de copier le répertoire ‘default’ et de modifier le fichier ‘settings’ qu’il contient avec les paramètres qui vont bien.

Le nom du nouveau répertoire dépend de l’URL du site. Pour www.exemple.fr, le répertoire serait : ‘sites/exemple.fr (notez qu’on peut retirer ‘www.’ si les utilisateurs peuvent accéder à votre site directement par http://exemple.fr).

Il n’est pas obligatoire que les sites possèdent des noms de domaine différents. Vous pouvez aussi utiliser des sous-domaines ou des sous-répertoires pour vos sites Drupal. Par exemple, exemple.fr, sous.exemple.fr et sous.exemple.fr/site3 peuvent être définis comme des sites Drupal indépendants. Les paramètres pour une configuration de ce type ressembleraient aux points suivants :

sites/default/settings.php

sites/exemple.fr/settings.php

sites/sous.exemple.fr/settings.php

sites/sous.exemple.fr.site3/settings.php

Par exemple, pour la configuration www.sous.exemple.fr/site3, Drupal cherche les fichiers de configuration dans l’ordre suivant, et utilise le premier fichier qu’il trouve :

sites/www.sous.exemple.fr.site3/settings.php

sites/sous.exemple.fr.site3/settings.php

sites/exemple.fr.site3/settings.php

sites/www.sous.exemple.fr/settings.php

sites/sous.exemple.fr/settings.php

sites/exemple.fr/settings.php

sites/default/settings.php

Si vous avez installé Drupal sur un port non-standard, le numéro du port est traité comme le premier sous-domaine, par exemple : http://www.exemple.fr:8080 peut être chargé depuis sites/8080.www.exemple.fr/. Le numéro du port peut être omis, selon la démarche ci-dessus, si aucune configuration spécifique au port n’est trouvée, comme pour un vrai sous-domaine.

Chaque site configuré peut avoir ses propres modules et thèmes qui seront proposés en plus de ceux se trouvant dans les dossiers ‘modules’ et ‘themes’ standard. Pour utiliser des modules ou des thèmes spécifiques au site, il suffit de créer un répertoire ‘modules’ ou ‘thèmes’ dans le répertoire de configuration du site. Par exemple, si sous.exemple.fr a un thème personnalisé et un module spécifique qui ne doit pas être accessible aux autres sites, la configuration sera la suivante :

sites/sous.exemple.fr/:

settings.php

themes/theme_specifique

modules/module_specifique

NOTE : pour plus d’information sur des hôtes virtuels ou les paramètres de configuration, consultez le manuel Drupal sur drupal.org.’,’On peut faire fonctionner plusieurs sites avec une même installation de Drupal.

Les configurations supplémentaires sont créées dans des sous-répertoires du répertoire ‘sites’.
Chaque sous-répertoire doit contenir un fichier ‘settings.php’ qui définit les paramètres de configuration.
Une façon simple de créer des sites supplémentaires est de copier le répertoire ‘default’ et de modifier le fichier ‘settings’ qu’il contient avec les paramètres qui vont bien.

Le nom du nouveau répertoire dépend de l’URL du site. Pour www.exemple.fr, le répertoire serait : ‘sites/exemple.fr (notez qu’on peut retirer ‘www.’ si les utilisateurs peuvent accéder à votre site directement par http://exemple.fr)

Pages

Articles similaires

httpdocs/sites/all/modules/metatag/metatag.module on line 1276

Forums: 

Dimanche 1 décembre 14h52? en voulant créer un article sur le site, voici le message qui est apparue.

je suis ensuite aller sur la liste des modules pour activer le module "token". Je ne connais as la nature de ce messagep

Fatal error: Call to undefined function token_get_entity_mapping() in /var/www/vhosts/maxeville.tv/httpdocs/sites/all/modules/metatag/metatag.module on line 1276

cache form sur drupal 7 base énorme plus de 147 Go

Forums: 

J'ai reçu un coup de téléphone de mon pestataire informatique m'indiquant que le site internet www.maxeville.tv est bloqué à cause d'un traffic considérable, plus de 147 Go de données. C'est sans doute du chinois pour vous, mais en language informatique c'est énorme.

Search Api et search database

Forums: 

Pour une recherche améliorée sur le site internet, j'ai installé le module search api avec ses dépendances. Après avoir suivi scrupuleusement la vidéo, je trouve que la fonction est sommaire. 

installation de search api

Installation de database api

Installation de search api page

Installation de search api spellcheck (qui ne focntionne pas sur mon site)

Installation de facetapi

PDOExecption : trop de connexions

Forums: 

Mercredi 2 juillet 2014 vers 22h30, le site internet était bloqué. Le message suivant est apparu

Deadlock found when trying to get lock

Erreur du 1 octobre 2014 suite à mise à jour des modules

Forums: 
PDOException : SQLSTATE[42S02]: Base table or view not found: 1146 Table 'drupal_maxeville.image_dimensions' doesn't exist: SELECT * FROM {image_dimensions} id WHERE id.fid IN (:fids_0, :fids_1, :fids_2); Array ( [:fids_0] => 39 [:fids_1] => 62 [:fids_2] => 69 ) 
dans file_entity_file_load() (ligne 225 dans /var/www/vhosts/maxeville.tv/httpdocs/sites/all/modules/media/file_entity/file_entity.module).

Mise à jour update.php sur ldanim.fr

Forums: 

Ayant mis à jour le core de drupal à la version 7.32, je fais un update sur le site www.ldanim.fr et voici le message que j'obtiens