One of the most favourite and valuable features in drupal is multisite configuration, Drupal 8 provide simple way to create multisite it reduced lots of works. The following steps shows to configure multisite in drupal 8,
- Should have more than one domain and databases, I am going to use the domain (www.domain1.com, www.domain2.com) and databases (domain1, domain2).
- Create two folders in drupal-8/sites/ folder with domain1, domain2 name, the folder path would be like this drupal-8/sites/domain1/ and drupal-8/sites/domain2/
- Create files/ folder in both the folder (drupal-8/sites/domain1/files)
- Copy the default.settings.php file and paste it into the both folder then rename it as settings.php ( drupal-8/sites/domain1/settings.php, drupal-8/sites/domain1/settings.php)
- Edit the settings.php file for domain1 to adding the database,
$databases['default']['default'] = array ( 'database' => 'domain1', // Change value to domain1 for www.domain.com and domain2 for www.domain2.com. 'username' => 'root', 'password' => 'root', 'prefix' => '', 'host' => 'localhost', 'port' => '3306', 'namespace' => 'Drupal\\Core\\Database\\Driver\\mysql', 'driver' => 'mysql', );
- Copy the drupal-8/sites/example.sites.php file and paste in on the same location then change the file name to sites.php (drupal-8/sites/sites.php)
- Add the following line in the bottom of the drupal-8/sites/sites.php file
$sites = array( 'domain1' => 'domain1.com', // Folder name => Domain name. 'domain2' => 'domain2.com', );
Thats all, both domain would works well with the different db with a single instance.