Installing multiple LabTrove instances

From LabTrove Documentation
Jump to: navigation, search

It is possible to install LabTrove in such as way that you can have several separate Troves on a single Web Server on a single machine. You can use the same method to have the Trove available as a section on an existing website. The Trove appears to be located in a sub-directory of the main site.

Follow the instructions in this section to add the Trove to a path.

Setting up the configuration file[edit]

You must set up the blog_path property in the Trove configuration file:

  1. Run the following command to open the Trove configuration file:
    1. nano config.php
  2. Edit the configuration file to change the $ct_config['blog_path'] to /some-path/ where some-path is the location where you want the Trove to be displayed.

Changing the Apache Web Server configuration[edit]

Use the following instructions to add the Trove site to the Apache Web Server configuration:

  1. Run the following command to open the Apache Web Server configuration file: nano /etc/apache2/sites-available/example.labtrove.org, where example.labtrove.org is the location of your Trove.
  2. If you have already set up a single instance with URLs like http://example.labtrove.org/, the file should look something like this:
 <VirtualHost *:80>
      ServerAdmin webmaster@localhost
      ServerName example.labtrove.org
      DocumentRoot /home/www/hosts/example.labtrove.org/docs
      <Directory />
              Options FollowSymLinks
              AllowOverride None
      </Directory>
      <Directory /home/www/hosts/example.labtrove.org>
              Options Indexes FollowSymLinks MultiViews
              AllowOverride All
              Order allow,deny
              allow from all
      </Directory>
</VirtualHost>

If you want to hosts two sites with URLs that look like http://example.labtrove.org/first-site/' and http://example.labtrove.org/second-site/, where the Labtrove docs/ folder for these are at /home/www/hosts/first-site/docs/ and /home/www/hosts/second-site/docs/ you will need change the file to the following. (Changes are highlighted in bold).

 <VirtualHost *:80>
      ServerAdmin webmaster@localhost
      ServerName example.labtrove.org
      DocumentRoot /home/www/hosts
      <Directory />
              Options FollowSymLinks
              AllowOverride None
      </Directory>
      Alias /first-site/ /home/www/hosts/first-site/docs/
      <Directory /home/www/hosts/first-site/docs>
              Options Indexes FollowSymLinks MultiViews
              AllowOverride All
              Order allow,deny
              allow from all
      </Directory>
      Alias /second-site/ /home/www/hosts/second-site/docs/
      <Directory /home/www/hosts/second-site/docs>
              Options Indexes FollowSymLinks MultiViews
              AllowOverride All
              Order allow,deny
              allow from all
      </Directory>
 </VirtualHost>

After reloading Apache, (sudo service apache2 reload), you should have two separate Troves hosted at:

If you try to access just http://example.labtrove.org/ you will most likely get a forbidden page. If you want, you could add a landing page by writing an html page in /home/www/hosts/index.html

What to do next[edit]