Tutorial Drupal 6 : Installation multi-site et single sign on (SSO) Imprimer Envoyer
Informatique - Drupal
Écrit par Guillaume   

 drupal_logo.jpg

Dans cet article vous découvrirez comment permettre l'authentification unique sur vos différentes installations Drupal, et ce sans installer de modules.

 


PRESENTATION ET TELECHARGEMENT DES MODULES 

 

 

Il est relativement simple d'effectuer une installation dites "multi-sites" de Drupal de façon à obtenir différents sous-sites pour un même domaine, par exemple :

 

 

http://www.computure.net/monsite1

http://www.computure.net/monsite2

http://www.computure.net/monsite3

 

Je ne redétaillerai pas une nouvelle fois cette procédure qui est expliquée un peu partout sur Internet, si vous rencontrez des difficultés, vous pouvez suivre ce tutorial :

 

http://www.dator.fr/installation-multisite-drupal/

 

 

En revanche, les choses se compliquent un peu lorsque l'on souhaite se logger une seule fois sur l'ensemble des sous-sites du domaine. Il existe quelques modules pour Drupal 6 prêts à l'emploi comme SSO ou encore Multisite Site Login

mais il sont surdimensionnés au regard de notre besoin. En effet, Drupal permet nativement cette authentification unique.

 

 

Supposons que vous venez d'effectuer une installation multisite avec les 3 sites de l'exemple ci-dessus, rendez-vous  dans le fichier settings.php de votre 1er site sous-site drupal pour rajouter les lignes suivantes : 

 

if (isset($_SERVER['HTTP_HOST'])) {

  $domain = '.'. preg_replace('`^www.`', '', $_SERVER['HTTP_HOST']);

  if (count(explode('.', $domain)) > 2) {

    ini_set('session.cookie_domain', $domain);

  }

}


$cookie_domain = $domain;


// Remplacer la ligne $db_prefix = ''; par :


$db_prefix = array(

  'default' => '',

  'users' => 'bdd_partagee.',

  'sessions' => 'bdd_partagee.',

  'authmap' => 'bdd_partagee.'

);
 

 

Les premières lignes permettent le partage du cookie nécessaire à l'identification entre tous les sous-sites de votre domaine. Le tableau db_prefix, contient les tables de la base de données à centraliser entre les différentes sous-sites (ici bdd_partagee).

 

Répétez l'opération pour les sites 2 et 3 ou copier/coller le fichier settings.php du site 1 vers les autres sous-sites en veillant bien à conserver la variable de configuration $db_url.

 

C'est tout .

 

Articles connexes :

Tutorial : Installer et configurer xml sitemap pour drupal

Liste de sites réalisés avec Drupal
Personnaliser le style (views,node,nlock) d'un site Drupal

Tutorial Drupal : Référencer son site avec les modules Nodewords et Integrated Metatags

 

 
N'hésitez pas à nous faire part de vos remarques en commentaire.

 

 

Tags:

Commentaires
Ajouter un nouveau Rechercher
Ecrire votre commentaire
Votre nom:
E-mail:
 
Web site:
Titre:
BB Code:
[b] [i] [u] [url] [quote] [code] [img] 
 
 
:angry::0:confused::cheer:B):evil::silly::dry::lol::kiss::D:pinch:
:(:shock::X:side::):P:unsure::woohoo::huh::whistle:;):s
:!::?::idea::arrow:
 
Saisissez le code que vous voyez.

!joomlacomment 4.0 Copyright (C) 2009 Compojoom.com . All rights reserved."