Episode 34 - Réaliser une installation multi-sites avec Drupal 7
Soumis par DrupalFacile le lun, 31/01/2011 - 08:19
Découvrez comment tirer parti de la puissance de Drupal 7 pour réaliser une installation multi-sites qui partagera les fichiers du cœur de Drupal, mais aussi les modules et la base de données de votre choix le cas échéant.
Suite à la précédente vidéo, j'ai utilisé Acquia pour installer une version 7 de Drupal.
Pour bénéficier de cette installation :
- J'ai créé un répertoire monsite2.localhost sous sites comme indiqué.
- Ajouté les lignes suivantes dans le fichier vhosts.conf :
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
- Arrêté Apache et MySql puis redemarré.
Mais impossible d'accéder à http://monsite2.localhost:8082/ --> Firefox me rajoute un www devant monsite2 et dit que l'adresse est introuvable.
J'ai loupé quelque chose ??
Pour Acquia Drupal c'est bien plus simple que pour une installation maison. Il suffit simplement de spécifier un nouveau nom de base de données et surtout un nouveau sous-domaine, puis l'outil se charge de faire tout le travail !
En majuscules, parce que vous le valez bien ! ;-)
Je commençais déjà à lorgner vers WAMP...
Je précise qu'il faut passer par le choix Import et non pas Nouveau site pour pouvoir accéder au répertoire des fichiers Drupal 7.
Et effectivement Acquia se charge de tout y compris la création du répertoire sous sites.
Tous les modules additionnels sont présents, il ne reste plus qu'à les activer ;-)
Encore un big merci pour la rapidité de la réponse.
Pour aller plus loin dans la gestion des multisites, est ce qu'il y a moyen de partager du contenu, des menus entre plusieurs sites d'une même instance de drupal ?
Ça va un peu loin là, non ? En tous cas je ne vois pas comment c'est faisable et l'intérêt derrière ? Vous voulez faire quoi au juste, dupliquer des sites ?
J'ai du, il y a deux ans développer une plateforme avec un site maître, qui contenait beaucoup de contenu et plusieurs centaines de petits sites satellites.
Ces petits sites satellites reprenaient en partie le contenu du site maître et avait en plus du contenu propre a eux ainsi que leurs propres templates et leur propre administrateur qui ne pouvait éditer que son propre contenu.
A l'époque j'ai fait çà avec un CMS développé en interne mais je voudrais savoir si c'était relativement simple de faire la même chose en Drupal.
J'ai vu que l'on pouvait, mais Drupal le déconseille, de partager plusieurs tables entre plusieurs instances.
Je ne sais pas si vous avez une expérience a ce sujet ?
OK je comprends. Là on rentre dans des configurations bien spécifiques et ça devient vite dangereux quand il faut partager des tables entre plusieurs instances.
Pour ma part je n'ai pas eu de projets en ce sens mais peut-être que vous devriez poser une question sur le forum Drupal pour avoir un retour d'expérience ?
Bonjour,
je relance ce sujet concernant le partage de données entre plusieurs sites.
J'aimerai faire un site portail avec une demi-douzaines de site satellites autours. Tels Framasoft avec Framagora, Framakey, Framapad, etc., j'aimerai avoir en haut de ma page un bloc navigation commun.
Savez-vous si c'est facilement réalisable ?
Par avance, merci
Pascal.
ps : au fait, je ne t'ai pas félicité pour ton site. Aspect sommaire, mais quelle efficacité. Un vrai plaisir. Bravo pour les tutos et merci pour le temps passé.
La bonne pratique veut qu'on mette le site en mode maintenance dès qu'on met à jour un module qui impactera une installation. Le multi-sites n'est que la réplication de la procédure à l'ensemble d'un nombre X de sites.
En ce sens, si un module est mis à jour pour un site donné dans une installation multi-sites, pas la peine de le faire pour tous. Si par contre ce module s'applique à tous les sites, oui, il faudrait le faire (et sauvegarder la/les bases ainsi que les fichiers) dans le meilleur des mondes.
Bonjour,
En multisites, pour un site en plusieurs langues, on ne peu pas activer Détection et Sélection de la langue avec l’URL : une boucle de redirection bloque le site (index.php dans le htaccess ?) ... est-ce un bug connu ?
Réponse à mon commentaire précédent (ça peut être utile) :
Globalredirect est le fautif :
http://drupal.org/node/1034126
En se servant du patch, tout fonctionne
Tes vidéos sont vraiment très claires et très intéressantes. Le multi-sites me semblait être une vrai montagne avec Drupal6. Mais avec ta vidéo ça change tout.
Le tuto est super. Mais j'ai un petit problème, je veux installé mes sites de manière interne et de façon à avoir :
http://tata-php5.tata/demonstration/multi-sites-public
http://tata-php5.tata/demonstration/multi-sites-professionel
http://tata-php5.tata/demonstration/multi-sites-personnel
Je n'ai pas l'habitude de ce genre de gestion donc je ne sais ni comment configuré mon vhost, ni comment configuré Drupal. quelqu'un peu m'aidé.
Pour info, je récupère bien mes sites de démonstrations quand je pointe sur mon listing (http://tata-php5.tata/demonstration) et quand je pointe sur mon dossier multi-sites (qui replace mon nom de dossier drupal) j'ai bien accès à la pages d'instalation de mon drupal default.
Je n'ai toujours pas réussi sur la façon de me faire un miltisites avec ma structure de démonstration mais stratégie oblige j'ai installé mon multisite de la la forme:
Le seul petit hic qui n'est pas expliqué dans le tuto c'est la mise en place de clean's url avec le multi-site qui demande l'alteration du fichier HTACCESS. Et je n'ai pas encore trouvé. Si quelqu'un à une idée à me donnée. à savoir que je vais surement utilisé en plus le modules pathauto pour l'ensemble de mes sites afin d'avoir des URL SEF.
Pour ceux qui veulent faire du milti sites sous Drupal avec du partage de table entre les différents sites
Sachez que c'est un jeu d'enfant si vous connaissez bien les interaction entre les tables.
il suffit que dans les fichiers settings de vos sites vous utilisé le systeme de prefix de la façon suivante:
il vous suffit juste de préalablement copier les tables dans votre base de donnée (dans le cas d'un multi BDD) ou de lui collez un prefix différent en la copiant dans votre BDD.
Bonjour,
Tout d'abord un grand merci pour ces vidéos qui sont très utiles !
Est il possible de modifier ( ou d'ajouter ) le préfixe des table sur un site drupal déjà installé ?
En fait j'aimerai exporter plusieurs sites DrupalGardens et utiliser la même bdd. Il me faut donc ajouter un préfixe différent aux tables de chacun de ces sites.
Méfiance avec les modifications sur le schéma de base de données, c'est le meilleur moyen d'être confronté à des problèmes importants.
Néanmoins, si vous savez ce que vous faites (et que vous sauvegardez tout avant d'entreprendre quoi que ce soit), vous pouvez renommer vos tables et changer la valeur "prefix" dans le fichier settings.php, à l'endroit même où sont renseignées vos informations utilisateur, mot de passe, hôte SQL etc...
Encore une fois MERCI ET BRAVO pour vos tutos et vidéos !!!!!!!!!!!!!!
Petite question : mon site est en développement mais déjà chez mon hébergeur (et donc pas en localhost).
Puis-je (et si oui .. comment) créer un multisite dans cette configuration?
Je ne vois nulle part de fichier vhosts.conf
Mille mercis d'avance
Amicalement
Martin
Passer un site installé en standalone vers une configuration multi-sites requiert des opérations assez délicates (base de données, chemins vers les fichiers) qui peuvent rendre le site inaccessible. Il est donc conseillé de ne faire les opérations que s'il y a un réel besoin derrière.
Bonjour Aurélien,
Si je vous comprends bien, il serait plus sage de refaire une installation Acquia Drupal en local, tout développer en local et seulement ensuite mettre le(s) site(s) en ligne.
Ai je bien compris ?
Merci² (au carré :-) )
Martin
J'ai suivi avec attention la présentation de cette installation (épisode 34), mais malgré tous mes efforts, je ne parviens qu'à installer un seul site, le site par défaut. Toute demande ensuite pointe sur ce site.
Je précise que je suis chez un hébergeur en mutualisé ; que je n'ai pas acccès à la configuration des virtual hosts.
Mon hébergeur m'a conseillé la note http://drupal.org/node/960934, mais ça ne change rien.
Pouvez-vous m'aider ? La présentation suppose qu'un fichier virtual host a été créé. Comment faut-il l'adapter dans un cadre mutualisé chez un hébergeur ?
Certains hébergements ne donnent pas l'accès à la Modification de la configuration Apache, cela limite l'utilisation de cette option pour beaucoup d'utilisateur, dommage...
Merci pour ce superbe tuto comme d'habitude ! mais une question! On ne parle pas ici du fichier défault qui est modifié ou peut ter crée au début ? Je comprends pas d'ou il sort ou il faut le mettre ?
J'ai installé me sites sur serveur distant en suivant la hiérarchie préconisée sur le tuto :
serveur/drupal/sites/monsite1.ext/files/settings.php
serveur/drupal/sites/monsite2.ext/files/settings.php
serveur/drupal/sites/monsite3.ext/files/settings.php
etc...
Au final, mes fichiers images en dossier public ont des chemins redondants :
h##p://vvvvvv.monsite1.ext/sites/monsite1.ext/files/styles/thumbnail/public/toto/photo1.jpg
=> on note que monsite1.ext apparaît 2 fois dans l'URL.
PB : Dans la BDD, monsite1.ext est écrit en dur. Résultat, en cas de changement de nom de domaine ou travail préalable en local puis déploiement sur serveur distant, les fichiers images sont introuvables.
Faut-il paramétrer plus finement le chemin des fichiers publics que j'ai laissé par défaut à :
sites/monsite1.ext/files ?
Ce qui explique -1- la redondance et -2- l'écriture en dur du nom de domaine dans la BDD.
Bonjour, j'ai passé la journée a lire tout les tutos au moins 15 fois, en anglais en français enfin bref, je suis passé par tout et je pense avoir compris le problème dans mon cas :
Drupal n'est pas installé a la racine de mon EasyPHP ( -> /www/drupal/)
Bref sous easyPHP le fichier pour configurer le virtual host est externalisé (cad qu'il n'est pas dans httpd.conf mais httpd-vhosts.conf).
Pour infos, sous 7 le port 80 est occupé par un serveur Apache interne, pour le garder j'utilise le port 100 (pas de problème a ce sujet je l'ai configuré dans Apache).
J'ai aussi testé de configurer le $base_url dans le settings.php... Useless
Tout ce que j'ai au mieux c'est un accès au site principal >< (simple redirection quoi)
Bref voici le résumé de mes actions et ce que j'ai concrètement :
Tout d'abord j'ai déjà un premier site mais il n'a pas était crée dans un dossier a part cad qu'il se trouve dans le dossier default. Je ne compte pas faire ca aussi salement mais je veux au moins que ca marche pour reprendre proprement plus tard. Il est configuré le plus basiquement possible.
Pour le dossier de Drupal :
/www/
--/drupal/
----/sites/
-------/all/
---------/default/
-----------/site1.local.com/ (a savoir que je suis passé par 100.site1.local.com, site.local etc etc)
-------------/site2.local (pas utile a préciser mais bon j'étais lancé xD)
Pour le fichier permettant la configuration des "VirtualHost"
127.0.0.1 w3.rayonnance.fr
127.0.0.1 w3.rayonnance-distribution.fr
127.0.0.1 site1.local.com (j'ai essayé en configurant des ports etc. Enfin je viens en dernier recours doit y avoir un blem niveau redirection c'est pas possible)
Bref je crois que c'est tout, je vous écris ca en rapide car je suis au boulot et j'ai d'autres soucis Drupal a régler ^^
(Demandez-moi les infos manquantes s'il y'en a)
La vidéo est excellente, après avoir créer mes deux site :
- site1.localhost
- site2.localhost
J'ai partagé dans settings.php de mon site2 les tables users et sessions afin de pourvoir me connecter facilement sur les deux sites avec le même user.
J'ai lu sur d'autres tutos, qu'il faut activer $cookie_domain pour que quand je me connecte sur site1.localhost, je vais sur site2 et je reste connecter.
étant en localhost sur Drupal 7 que faut-il mettre exactement dans cette variable $cookie_domain
parce que la connexion fonctionne sur site1.localhost et lors du switch vers site2 la connexion n'est pas maintenu.
Contrairement à Drupal 6, est ce qu'avec drupal 7 on peut utiliser des noms de répertoires différents du nom de domaine
par exemple
site/monsite1 (pour www.AAA.com)
site/monsite2 (pour www.BBB.com)
merci
Le multisite peut également être géré au travers d'un module, ou plus exactement de plusieurs sous-modules qui composent le projet Domain access. (http://drupal.org/project/domain). J'ai eu l'occasion de le tester sur Drupal 6, et il répondait pas mal à nos attentes:
- Gestion du contenu centralisée et publication sur un ou plusieurs sous-sites
- Gestion des users avec accès sur un ou plusieurs sous-sites
- Gestion de thèmes différents ou non selon le sous-site.
bref, un module plutôt pas mal !
Ouvrez le fichier :
C:\Windows\System32\drivers\etc\hosts
Vous devriez lire vers la ligne 20 quelque chose comme ceci :
127.0.0.1 localhost
::1 localhost
Rajoutez la ligne :
127.0.0.1 site2.local
127.0.0.1 site1.local
Et enregistrez le fichier.
Remarque :
Si vous ne pouvez pas éditer le fichier, vérifiez que celui-ci n'est pas en lecture seule.
sinon Faites une copie du fichier sur votre bureau, mettez les droits d'écriture, faites la modification, remettez le fichier en lecture seule, et écrasez le fichier original.
Configuration de Apache
--------------------
Sous wamp, lorsque celui-ci est lancé, cliquez sur l'icone dans la barre des tâches, cliquez sur "Apache" et vous devriez voir dans les entrées du menu déroulant un fichier httpd.conf. Ouvrez ce fichier et nous allons faire les modifications nécessaires.
Vous pouvez retrouver ce fichier sous C:\wamp\bin\apache\apacheX.X.X\conf\httpd.conf.
#Include conf/extra/httpd-vhosts.conf
Supprimez simplement le symbole # qui sert de marqueur de commentaire
AllowOverride None
Options None
Order allow,deny
Allow from all
Enregistrez-les puis redémarrez le serveur Apache.
Remarque :
Si une erreur est commise lors de la création d'un alias, il suffit de supprimer le fichier concerné pour retrouver la configuration d'origine
PS : http://site1.local No pas localhost/site1.local/
J'ai créé un theme général dans sites/all/themes/basic.
Je veux que ce thème soit utilisé par les 2 autres sites que j'ai créé.
Pour ces 2 sites j'ai choisi dans apparence le theme basic.
Comment faire si je dois juste changer le logo et les css par exemple ?
Je trouve cela un peu dommage d'aller copier tout le thème dans mon site1/themes/ et mon site2/themes/
Oui, il faut passer par du sub-theming : http://drupal.org/node/225125 - C'est le principe du thème Zen qui à popularisé ce principe. On part d'un thème principal qu'on améliore régulièrement et les sous-thèmes en héritent les améliorations tout en gardant leur spécificité.
Vous ne faites pas allusion au fichier sites.php (example.php) ni àbase_url du fichier settings.
En quoi sont-ils utiles dans une installation multisite ?
Merci
Bonjour tous le monde
avant tout je tien a dire que vos vidéo sont très réussi .
mais je me retrouve face à un problème.
voila nous somme 3 personnes a créer un site pour un client et nous travaillons sur 3 thermes différents
un générateur de blog
un générateur de forum
un générateur de fiche
c'est trois générateur sont sur le même site mais nous travaillons chacun de notre coté .
la question est : comment peut on réunir nos 3 projets en commun sur le même site ? en sachant que chacun travail à partir de cher lui sur un des générateurs
Je viens de voir la question. Pour personnaliser la page d'accueil tu as le module front page:
http://drupal.org/project/front
Un autre méthode consiste a créer une page front page dans le code source.
(De mémoire blue master utilise cette methode: http://drupal.org/project/bluemasters/ )
Merci pour ce tuto, même si je n'ai pas compris comment faire les déclarations de virtual host tout de suite.
Après avoir vu de nombreux tutos en ligne et les réponses en commentaire je me retrouve bloque.
Ma configuration:
Windows 64 bit / Wamp 2.2
J'ai change le port de wamp sur 82 et non 80 a cause de skype.
J'ai installe drupal 7.14 et le premier site en principal avec default.
J'ai ensuite créer les sous-dossiers c:\wamp\www\monsitedrupal\sites\sitea
et c:\wamp\www\monsitedrupal\sites\example
Le fichier host a ete modifie (C:\Windows\System32\drivers\etc\host):
127.0.0.1:82 localhost
127.0.0.1:82 sitea
127.0.0.1:82 example
Sur Wamp, les fichier conf et vhost.conf ont ete modifies comme suit:
-----------------------------------------------
C:\wamp\bin\apache\Apache2.2.21\conf\httpd.conf
Activation de la ligne : (j'ai juste enlever le '#' pour activer la ligne)
# Virtual hosts
Include conf/extra/httpd-vhosts.conf
--------------------------------------
C:\wamp\bin\apache\Apache2.2.21\conf\extra
Ajout des vrituals host:
ServerName example
DocumentRoot c:/wamp/www/monsitedrupal/sites/example
Pour les bases de donnees:
Les bases sitea et example sont crees sur phpmyadmin.
Pour les fichiers settings: (J'ai copiez/coller ce qui avait dans les commentaires puis enlever les "/*" pour activer les lignes.)
Example
array(
'driver' => 'mysql',
'database' => 'example',
'username' => 'root',
'password' => '',
'host' => 'localhost',
'port' => '',
'prefix' => '',
'collation' => 'utf8_general_ci',
);
Commentaires
BFPV974
lun, 31/01/2011 - 11:03
Permalien
Distribution Acquia Drupal et multisites
Suite à la précédente vidéo, j'ai utilisé Acquia pour installer une version 7 de Drupal.
Pour bénéficier de cette installation :
- J'ai créé un répertoire monsite2.localhost sous sites comme indiqué.
- Ajouté les lignes suivantes dans le fichier vhosts.conf :
ServerName monsite2.localhost
DocumentRoot "F:\www\drupal7"
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
- Arrêté Apache et MySql puis redemarré.
Mais impossible d'accéder à http://monsite2.localhost:8082/ --> Firefox me rajoute un www devant monsite2 et dit que l'adresse est introuvable.
J'ai loupé quelque chose ??
DrupalFacile
lun, 31/01/2011 - 12:07
Permalien
Bonjour,
Bonjour,
Pour Acquia Drupal c'est bien plus simple que pour une installation maison. Il suffit simplement de spécifier un nouveau nom de base de données et surtout un nouveau sous-domaine, puis l'outil se charge de faire tout le travail !
Aurélien
www.drupalfacile.org
Apprenez Drupal en vidéo et en français !
BFPV974
lun, 31/01/2011 - 12:41
Permalien
MERCI !
En majuscules, parce que vous le valez bien ! ;-)
Je commençais déjà à lorgner vers WAMP...
Je précise qu'il faut passer par le choix Import et non pas Nouveau site pour pouvoir accéder au répertoire des fichiers Drupal 7.
Et effectivement Acquia se charge de tout y compris la création du répertoire sous sites.
Tous les modules additionnels sont présents, il ne reste plus qu'à les activer ;-)
Encore un big merci pour la rapidité de la réponse.
jief (non vérifié)
jeu, 03/02/2011 - 05:50
Permalien
Bonjour,
Bonjour,
Super intéressant comme tuto, merci.
Pour aller plus loin dans la gestion des multisites, est ce qu'il y a moyen de partager du contenu, des menus entre plusieurs sites d'une même instance de drupal ?
Merci
Jief
DrupalFacile
jeu, 03/02/2011 - 10:17
Permalien
Bonjour,
Bonjour,
Ça va un peu loin là, non ? En tous cas je ne vois pas comment c'est faisable et l'intérêt derrière ? Vous voulez faire quoi au juste, dupliquer des sites ?
Aurélien
www.drupalfacile.org
Apprenez Drupal en vidéo et en français !
jief (non vérifié)
jeu, 03/02/2011 - 10:39
Permalien
J'ai du, il y a deux ans
J'ai du, il y a deux ans développer une plateforme avec un site maître, qui contenait beaucoup de contenu et plusieurs centaines de petits sites satellites.
Ces petits sites satellites reprenaient en partie le contenu du site maître et avait en plus du contenu propre a eux ainsi que leurs propres templates et leur propre administrateur qui ne pouvait éditer que son propre contenu.
A l'époque j'ai fait çà avec un CMS développé en interne mais je voudrais savoir si c'était relativement simple de faire la même chose en Drupal.
J'ai vu que l'on pouvait, mais Drupal le déconseille, de partager plusieurs tables entre plusieurs instances.
Je ne sais pas si vous avez une expérience a ce sujet ?
Merci pour vos réponse
Jief
DrupalFacile
jeu, 03/02/2011 - 10:43
Permalien
OK je comprends. Là on rentre
OK je comprends. Là on rentre dans des configurations bien spécifiques et ça devient vite dangereux quand il faut partager des tables entre plusieurs instances.
Pour ma part je n'ai pas eu de projets en ce sens mais peut-être que vous devriez poser une question sur le forum Drupal pour avoir un retour d'expérience ?
Aurélien
www.drupalfacile.org
Apprenez Drupal en vidéo et en français !
PasKalou (non vérifié)
dim, 29/05/2011 - 08:37
Permalien
Bloc commun
Bonjour,
je relance ce sujet concernant le partage de données entre plusieurs sites.
J'aimerai faire un site portail avec une demi-douzaines de site satellites autours. Tels Framasoft avec Framagora, Framakey, Framapad, etc., j'aimerai avoir en haut de ma page un bloc navigation commun.
Savez-vous si c'est facilement réalisable ?
Par avance, merci
Pascal.
ps : au fait, je ne t'ai pas félicité pour ton site. Aspect sommaire, mais quelle efficacité. Un vrai plaisir. Bravo pour les tutos et merci pour le temps passé.
Sweb
ven, 04/02/2011 - 19:52
Permalien
Bravo!
Tes vidéos sont très utiles.
Merci de prendre le temps pour les produire.
Sweb
sam, 12/02/2011 - 15:15
Permalien
update.php et mode maintenance
Bonjour,
Doit-on mettre tous les sites en mode maintenance avant de faire la mise à jour d'un module dans une installation multi-sites?
DrupalFacile
mar, 15/02/2011 - 21:39
Permalien
Bonjour,
Bonjour,
La bonne pratique veut qu'on mette le site en mode maintenance dès qu'on met à jour un module qui impactera une installation. Le multi-sites n'est que la réplication de la procédure à l'ensemble d'un nombre X de sites.
En ce sens, si un module est mis à jour pour un site donné dans une installation multi-sites, pas la peine de le faire pour tous. Si par contre ce module s'applique à tous les sites, oui, il faudrait le faire (et sauvegarder la/les bases ainsi que les fichiers) dans le meilleur des mondes.
Aurélien
www.drupalfacile.org
Apprenez Drupal en vidéo et en français !
JMG (non vérifié)
sam, 19/02/2011 - 09:44
Permalien
Bonjour,
Bonjour,
En multisites, pour un site en plusieurs langues, on ne peu pas activer Détection et Sélection de la langue avec l’URL : une boucle de redirection bloque le site (index.php dans le htaccess ?) ... est-ce un bug connu ?
JMG (non vérifié)
sam, 19/02/2011 - 11:28
Permalien
Réponse à mon commentaire
Réponse à mon commentaire précédent (ça peut être utile) :
Globalredirect est le fautif :
http://drupal.org/node/1034126
En se servant du patch, tout fonctionne
did1979
mar, 01/03/2011 - 07:51
Permalien
Très bonne vidéo
Bonjour,
Tes vidéos sont vraiment très claires et très intéressantes. Le multi-sites me semblait être une vrai montagne avec Drupal6. Mais avec ta vidéo ça change tout.
Merci.
did1979
did1979
Darkserbere
ven, 04/03/2011 - 16:42
Permalien
Bonjour,
Bonjour,
Le tuto est super. Mais j'ai un petit problème, je veux installé mes sites de manière interne et de façon à avoir :
http://tata-php5.tata/demonstration/multi-sites-public
http://tata-php5.tata/demonstration/multi-sites-professionel
http://tata-php5.tata/demonstration/multi-sites-personnel
Je n'ai pas l'habitude de ce genre de gestion donc je ne sais ni comment configuré mon vhost, ni comment configuré Drupal. quelqu'un peu m'aidé.
Pour info, je récupère bien mes sites de démonstrations quand je pointe sur mon listing (http://tata-php5.tata/demonstration) et quand je pointe sur mon dossier multi-sites (qui replace mon nom de dossier drupal) j'ai bien accès à la pages d'instalation de mon drupal default.
Darkserbere
mer, 09/03/2011 - 10:13
Permalien
Gestion multisite
Bonjour tout le monde,
Je n'ai toujours pas réussi sur la façon de me faire un miltisites avec ma structure de démonstration mais stratégie oblige j'ai installé mon multisite de la la forme:
http://multi-sites-public.tata-php5.tata
http://multi-sites-pro.tata-php5.tata
Le seul petit hic qui n'est pas expliqué dans le tuto c'est la mise en place de clean's url avec le multi-site qui demande l'alteration du fichier HTACCESS. Et je n'ai pas encore trouvé. Si quelqu'un à une idée à me donnée. à savoir que je vais surement utilisé en plus le modules pathauto pour l'ensemble de mes sites afin d'avoir des URL SEF.
Pour ceux qui veulent faire du milti sites sous Drupal avec du partage de table entre les différents sites
Sachez que c'est un jeu d'enfant si vous connaissez bien les interaction entre les tables.
il suffit que dans les fichiers settings de vos sites vous utilisé le systeme de prefix de la façon suivante:
$$ligne 181 => 203 $$
$databases = array (
'default' =>
array (
'default' =>
array (
'database' => 'ARNAUD_MULTI',
'username' => 'ARNAUD',
'password' => 'devils',
'host' => '192.168.1.186',
'port' => '',
'driver' => 'mysql',
'prefix' => array(
'default' => 'multisites_public_',
'authmap' => 'commun.',
'role' => 'commun.',
'role_permission' => 'commun.',
'sessions' => 'commun.',
'users' => 'commun.',
'users_roles' => 'commun.',
'[nom de base de la table]' => '[prefix appeler]'
)
),
),
);
il vous suffit juste de préalablement copier les tables dans votre base de donnée (dans le cas d'un multi BDD) ou de lui collez un prefix différent en la copiant dans votre BDD.
Netek (non vérifié)
mar, 05/04/2011 - 13:19
Permalien
Changer le prefixe des tables apres installation
Bonjour,
Tout d'abord un grand merci pour ces vidéos qui sont très utiles !
Est il possible de modifier ( ou d'ajouter ) le préfixe des table sur un site drupal déjà installé ?
En fait j'aimerai exporter plusieurs sites DrupalGardens et utiliser la même bdd. Il me faut donc ajouter un préfixe différent aux tables de chacun de ces sites.
Merci d'avance pour votre réponse :)
DrupalFacile
mar, 05/04/2011 - 15:16
Permalien
Bonjour,
Bonjour,
Méfiance avec les modifications sur le schéma de base de données, c'est le meilleur moyen d'être confronté à des problèmes importants.
Néanmoins, si vous savez ce que vous faites (et que vous sauvegardez tout avant d'entreprendre quoi que ce soit), vous pouvez renommer vos tables et changer la valeur "prefix" dans le fichier settings.php, à l'endroit même où sont renseignées vos informations utilisateur, mot de passe, hôte SQL etc...
Aurélien
www.drupalfacile.org
Apprenez Drupal en vidéo et en français !
Martin vdb (non vérifié)
jeu, 21/04/2011 - 16:56
Permalien
Multisite
Encore une fois MERCI ET BRAVO pour vos tutos et vidéos !!!!!!!!!!!!!!
Petite question : mon site est en développement mais déjà chez mon hébergeur (et donc pas en localhost).
Puis-je (et si oui .. comment) créer un multisite dans cette configuration?
Je ne vois nulle part de fichier vhosts.conf
Mille mercis d'avance
Amicalement
Martin
DrupalFacile
ven, 22/04/2011 - 03:58
Permalien
Bonjour,
Bonjour,
Passer un site installé en standalone vers une configuration multi-sites requiert des opérations assez délicates (base de données, chemins vers les fichiers) qui peuvent rendre le site inaccessible. Il est donc conseillé de ne faire les opérations que s'il y a un réel besoin derrière.
Aurélien
www.drupalfacile.org
Apprenez Drupal en vidéo et en français !
Martin vdb (non vérifié)
ven, 22/04/2011 - 08:19
Permalien
Bonjour Aurélien,
Bonjour Aurélien,
Si je vous comprends bien, il serait plus sage de refaire une installation Acquia Drupal en local, tout développer en local et seulement ensuite mettre le(s) site(s) en ligne.
Ai je bien compris ?
Merci² (au carré :-) )
Martin
cep73
mer, 22/06/2011 - 23:39
Permalien
Installation de Drupal 7 en multi-sites avec cPanel
Bonjour,
J'ai suivi avec attention la présentation de cette installation (épisode 34), mais malgré tous mes efforts, je ne parviens qu'à installer un seul site, le site par défaut. Toute demande ensuite pointe sur ce site.
Je précise que je suis chez un hébergeur en mutualisé ; que je n'ai pas acccès à la configuration des virtual hosts.
Mon hébergeur m'a conseillé la note http://drupal.org/node/960934, mais ça ne change rien.
Pouvez-vous m'aider ? La présentation suppose qu'un fichier virtual host a été créé. Comment faut-il l'adapter dans un cadre mutualisé chez un hébergeur ?
Bien cordialement.
Pierre
UlysseUlysse
mer, 29/06/2011 - 13:54
Permalien
Achoppement avec drupal et le multi-sites!
Certains hébergements ne donnent pas l'accès à la Modification de la configuration Apache, cela limite l'utilisation de cette option pour beaucoup d'utilisateur, dommage...
NDIAYE (non vérifié)
mar, 02/08/2011 - 03:38
Permalien
Cette video est très utile,
Cette video est très utile, vraiment claire !
Mais est ce que cela est est possible avec drupal 6 ?
Merci d'avance !
Look74 (non vérifié)
mer, 19/10/2011 - 18:03
Permalien
défaut sur default
Merci pour ce superbe tuto comme d'habitude ! mais une question! On ne parle pas ici du fichier défault qui est modifié ou peut ter crée au début ? Je comprends pas d'ou il sort ou il faut le mettre ?
Michel (non vérifié)
lun, 07/11/2011 - 09:38
Permalien
Des images avec un chemin redondant
Bonjour et merci pour tout ce travail de partage.
J'ai installé me sites sur serveur distant en suivant la hiérarchie préconisée sur le tuto :
serveur/drupal/sites/monsite1.ext/files/settings.php
serveur/drupal/sites/monsite2.ext/files/settings.php
serveur/drupal/sites/monsite3.ext/files/settings.php
etc...
Au final, mes fichiers images en dossier public ont des chemins redondants :
h##p://vvvvvv.monsite1.ext/sites/monsite1.ext/files/styles/thumbnail/public/toto/photo1.jpg
=> on note que monsite1.ext apparaît 2 fois dans l'URL.
PB : Dans la BDD, monsite1.ext est écrit en dur. Résultat, en cas de changement de nom de domaine ou travail préalable en local puis déploiement sur serveur distant, les fichiers images sont introuvables.
Faut-il paramétrer plus finement le chemin des fichiers publics que j'ai laissé par défaut à :
sites/monsite1.ext/files ?
Ce qui explique -1- la redondance et -2- l'écriture en dur du nom de domaine dans la BDD.
Herlock (non vérifié)
jeu, 24/11/2011 - 16:54
Permalien
Bonjour, j'ai passé la
Bonjour, j'ai passé la journée a lire tout les tutos au moins 15 fois, en anglais en français enfin bref, je suis passé par tout et je pense avoir compris le problème dans mon cas :
Drupal n'est pas installé a la racine de mon EasyPHP ( -> /www/drupal/)
Bref sous easyPHP le fichier pour configurer le virtual host est externalisé (cad qu'il n'est pas dans httpd.conf mais httpd-vhosts.conf).
Pour infos, sous 7 le port 80 est occupé par un serveur Apache interne, pour le garder j'utilise le port 100 (pas de problème a ce sujet je l'ai configuré dans Apache).
J'ai aussi testé de configurer le $base_url dans le settings.php... Useless
Tout ce que j'ai au mieux c'est un accès au site principal >< (simple redirection quoi)
Bref voici le résumé de mes actions et ce que j'ai concrètement :
Tout d'abord j'ai déjà un premier site mais il n'a pas était crée dans un dossier a part cad qu'il se trouve dans le dossier default. Je ne compte pas faire ca aussi salement mais je veux au moins que ca marche pour reprendre proprement plus tard. Il est configuré le plus basiquement possible.
Pour le dossier de Drupal :
/www/
--/drupal/
----/sites/
-------/all/
---------/default/
-----------/site1.local.com/ (a savoir que je suis passé par 100.site1.local.com, site.local etc etc)
-------------/site2.local (pas utile a préciser mais bon j'étais lancé xD)
Pour le fichier permettant la configuration des "VirtualHost"
httpd-vhosts.conf :
ServerName site1.local.com
DocumentRoot "C:\Program Files (x86)\EasyPHP-5.4.0beta2\www\drupal"
Pour le fichier hosts :
127.0.0.1 w3.rayonnance.fr
127.0.0.1 w3.rayonnance-distribution.fr
127.0.0.1 site1.local.com (j'ai essayé en configurant des ports etc. Enfin je viens en dernier recours doit y avoir un blem niveau redirection c'est pas possible)
Bref je crois que c'est tout, je vous écris ca en rapide car je suis au boulot et j'ai d'autres soucis Drupal a régler ^^
(Demandez-moi les infos manquantes s'il y'en a)
Merci à vous tous!
PROTIN Johan (non vérifié)
mar, 06/12/2011 - 17:40
Permalien
Vidéo très bien !
Bonsoir,
La vidéo est excellente, après avoir créer mes deux site :
- site1.localhost
- site2.localhost
J'ai partagé dans settings.php de mon site2 les tables users et sessions afin de pourvoir me connecter facilement sur les deux sites avec le même user.
J'ai lu sur d'autres tutos, qu'il faut activer $cookie_domain pour que quand je me connecte sur site1.localhost, je vais sur site2 et je reste connecter.
étant en localhost sur Drupal 7 que faut-il mettre exactement dans cette variable $cookie_domain
parce que la connexion fonctionne sur site1.localhost et lors du switch vers site2 la connexion n'est pas maintenu.
Quelqu'un a une idée ?
cpo (non vérifié)
sam, 31/12/2011 - 15:15
Permalien
répertoire sans le nom du nom de domaine
Contrairement à Drupal 6, est ce qu'avec drupal 7 on peut utiliser des noms de répertoires différents du nom de domaine
par exemple
site/monsite1 (pour www.AAA.com)
site/monsite2 (pour www.BBB.com)
merci
Vince (non vérifié)
mar, 31/01/2012 - 16:27
Permalien
Pour aller plus loin..
Le multisite peut également être géré au travers d'un module, ou plus exactement de plusieurs sous-modules qui composent le projet Domain access. (http://drupal.org/project/domain). J'ai eu l'occasion de le tester sur Drupal 6, et il répondait pas mal à nos attentes:
- Gestion du contenu centralisée et publication sur un ou plusieurs sous-sites
- Gestion des users avec accès sur un ou plusieurs sous-sites
- Gestion de thèmes différents ou non selon le sous-site.
bref, un module plutôt pas mal !
Steph (non vérifié)
jeu, 09/02/2012 - 13:54
Permalien
Configurer l'hôte pour windows, Wamp Server
Ouvrez le fichier :
C:\Windows\System32\drivers\etc\hosts
Vous devriez lire vers la ligne 20 quelque chose comme ceci :
127.0.0.1 localhost
::1 localhost
Rajoutez la ligne :
127.0.0.1 site2.local
127.0.0.1 site1.local
Et enregistrez le fichier.
Remarque :
Si vous ne pouvez pas éditer le fichier, vérifiez que celui-ci n'est pas en lecture seule.
sinon Faites une copie du fichier sur votre bureau, mettez les droits d'écriture, faites la modification, remettez le fichier en lecture seule, et écrasez le fichier original.
Configuration de Apache
--------------------
Sous wamp, lorsque celui-ci est lancé, cliquez sur l'icone dans la barre des tâches, cliquez sur "Apache" et vous devriez voir dans les entrées du menu déroulant un fichier httpd.conf. Ouvrez ce fichier et nous allons faire les modifications nécessaires.
Vous pouvez retrouver ce fichier sous C:\wamp\bin\apache\apacheX.X.X\conf\httpd.conf.
#Include conf/extra/httpd-vhosts.conf
Supprimez simplement le symbole # qui sert de marqueur de commentaire
Listen *:80
#SITE1.LOCAL
NameVirtualHost site1.local
ServerAdmin
DocumentRoot "C:/wamp/www/drupal7/"
ServerName site1.local
ServerAlias site1.local
ErrorLog "logs/site1.local-error.log"
CustomLog "logs/site1.local-access.log" common
AllowOverride None
Options None
Order allow,deny
Allow from all
#SITE2.LOCAL
NameVirtualHost site2.local
ServerAdmin
DocumentRoot "C:/wamp/www/drupal7/"
ServerName site2.local
ServerAlias site2.local
ErrorLog "logs/site2.local-error.log"
CustomLog "logs/site2.local-access.log" common
AllowOverride None
Options None
Order allow,deny
Allow from all
Enregistrez-les puis redémarrez le serveur Apache.
Remarque :
Si une erreur est commise lors de la création d'un alias, il suffit de supprimer le fichier concerné pour retrouver la configuration d'origine
PS : http://site1.local No pas localhost/site1.local/
Gilles (non vérifié)
ven, 17/02/2012 - 14:45
Permalien
Different themes multisite drupal 7
Salut,
Super la vidéo, très clair !
Juste une petite question pour le theming
J'ai créé un theme général dans sites/all/themes/basic.
Je veux que ce thème soit utilisé par les 2 autres sites que j'ai créé.
Pour ces 2 sites j'ai choisi dans apparence le theme basic.
Comment faire si je dois juste changer le logo et les css par exemple ?
Je trouve cela un peu dommage d'aller copier tout le thème dans mon site1/themes/ et mon site2/themes/
Créer un subtheme de basic ?
Merci pour cet éclaircissement.
Gilles
DrupalFacile
jeu, 23/02/2012 - 09:54
Permalien
Bonjour Gilles,
Bonjour Gilles,
Oui, il faut passer par du sub-theming : http://drupal.org/node/225125 - C'est le principe du thème Zen qui à popularisé ce principe. On part d'un thème principal qu'on améliore régulièrement et les sous-thèmes en héritent les améliorations tout en gardant leur spécificité.
Aurélien
www.drupalfacile.org
Apprenez Drupal en vidéo et en français !
Alain Lambert (non vérifié)
sam, 10/03/2012 - 11:54
Permalien
fichier sites.php
Bonjour,
Vous ne faites pas allusion au fichier sites.php (example.php) ni àbase_url du fichier settings.
En quoi sont-ils utiles dans une installation multisite ?
Merci
Alain
harrari (non vérifié)
jeu, 15/03/2012 - 16:05
Permalien
Multi-site en projet avec plusieurs personne
Bonjour tous le monde
avant tout je tien a dire que vos vidéo sont très réussi .
mais je me retrouve face à un problème.
voila nous somme 3 personnes a créer un site pour un client et nous travaillons sur 3 thermes différents
un générateur de blog
un générateur de forum
un générateur de fiche
c'est trois générateur sont sur le même site mais nous travaillons chacun de notre coté .
la question est : comment peut on réunir nos 3 projets en commun sur le même site ? en sachant que chacun travail à partir de cher lui sur un des générateurs
merci
ZeD (non vérifié)
dim, 17/06/2012 - 20:17
Permalien
comment personnaliser la page
comment personnaliser la page d'accueil du site web fait avec drupal 7, de telle sorte qu'elle soit carément différente du reste des pages du site?
Orewan (non vérifié)
jeu, 12/07/2012 - 10:15
Permalien
Bonjour a tous,
Bonjour a tous,
Je viens de voir la question. Pour personnaliser la page d'accueil tu as le module front page:
http://drupal.org/project/front
Un autre méthode consiste a créer une page front page dans le code source.
(De mémoire blue master utilise cette methode: http://drupal.org/project/bluemasters/ )
Orewan (non vérifié)
jeu, 12/07/2012 - 10:50
Permalien
Installation multisite, bloque pendant la procedure
Bonjour a tous,
Merci pour ce tuto, même si je n'ai pas compris comment faire les déclarations de virtual host tout de suite.
Après avoir vu de nombreux tutos en ligne et les réponses en commentaire je me retrouve bloque.
Ma configuration:
Windows 64 bit / Wamp 2.2
J'ai change le port de wamp sur 82 et non 80 a cause de skype.
J'ai installe drupal 7.14 et le premier site en principal avec default.
J'ai ensuite créer les sous-dossiers c:\wamp\www\monsitedrupal\sites\sitea
et c:\wamp\www\monsitedrupal\sites\example
Le fichier host a ete modifie (C:\Windows\System32\drivers\etc\host):
127.0.0.1:82 localhost
127.0.0.1:82 sitea
127.0.0.1:82 example
Sur Wamp, les fichier conf et vhost.conf ont ete modifies comme suit:
-----------------------------------------------
C:\wamp\bin\apache\Apache2.2.21\conf\httpd.conf
Activation de la ligne : (j'ai juste enlever le '#' pour activer la ligne)
# Virtual hosts
Include conf/extra/httpd-vhosts.conf
--------------------------------------
C:\wamp\bin\apache\Apache2.2.21\conf\extra
Ajout des vrituals host:
ServerName example
DocumentRoot c:/wamp/www/monsitedrupal/sites/example
ServerName sitea.com
DocumentRoot c:/wamp/www/monsitedrupal/sites/sitea
---------------------------------------------
Pour les bases de donnees:
Les bases sitea et example sont crees sur phpmyadmin.
Pour les fichiers settings: (J'ai copiez/coller ce qui avait dans les commentaires puis enlever les "/*" pour activer les lignes.)
Example
array(
'driver' => 'mysql',
'database' => 'example',
'username' => 'root',
'password' => '',
'host' => 'localhost',
'port' => '',
'prefix' => '',
'collation' => 'utf8_general_ci',
);
Sitea:
array(
* 'driver' => 'mysql',
* 'database' => 'sitea',
* 'username' => 'root',
* 'password' => '',
* 'host' => 'localhost',
* 'port' => '',
* 'prefix' => '',
* 'collation' => 'utf8_general_ci',
* );
Lorsque je me rend sur l’adresse: "www.sitea.com:82" ou "example:82" le site ne s'installe pas et j'ai
comme erreur "Delai d'attente trop long".
Qu'elle est l'etape ou j'ai manque quelque chose ? Ma configuration est-elle mauvaise ?
Merci d'avance
Ps: (J'ai modifie le port en mettant : VirtualHost *:82 et NameVirtualHost *:82, je me retrouve avec "access
forbidden" au server.)
Ajouter un commentaire