Mysql – Multiple instances of MediaWiki on one server

apache-2.2mediawikiMySQLPHPwiki

We need to run several MediaWiki Wikis, that need totally separate user accounts, on the one server. What would be the better solution:

  1. Use separate source code and use namespaces in the database.
  2. Use the same source code along the lines of this, essentially you create a customised localsettings.php file for each site that contains the site specific info and you have a master localsettings.php file that depending on the url send you to the relevant site specific localsettings.php
  3. Symlink all of the source code except for localsettings.php and any other relevant files from a master folder.

Obviously it would be nicer to be able to use the same code for every instance, as it will make upgrades a lot easier.

For what it's worth it will be running on Ubuntu server, Apache with a sprinkling on nginx & MySQL

Best Answer

Use separate source code and separate databases. That way you can install extensions or custom themes in one of them without impacting others.

If you really know that you will never ever have custom extensions/themes in one but not in the other wikis, then 3. seems to be a better choice than 2, but keep in mind the upload folder (there is a setting in LocalSettings to specify the path)

Related Topic