English (United Kingdom)
Jms Multi Site, formerly joomla multisite.
Create, share multiple joomla sites in few clicks !
Home Tutorial
Tutorial version 1.1

This is organized in a set of questions (a road map) that assist you in function of your specific case or context.

Step
Description
0

"Joomla Multiple Site concepts"

Is a video that present:

  • the principle of an HTTP Server,
  • how apache or IIS server are working,
  • what must be changed in this server to share the same Joomla instance,
  • how JMS analyse the URL and how it associate each URL to a specific Joomla configuration and database connection.

1

Do you want to install JMS on an existing website ?

If yes, go step 3 to install JMS on an existing website.
Else continue step 2 to install a fresh Joomla

2

"How to install a fresh joomla with a specific table prefix"

is a video where we show:

  • The transfer of Joomla 1.5.9 on a Unix machine using FTP
  • The deployment of Joomla using a SSH connection (gunzip and tar -xvf commands)
  • The installation of Joomla and in particular where to specify the table prefix in the DB Configuration "advance settings"
    In our sample, we have replace "jos_" table prefix by "main_"
3

"how to install Joomla Multi Sites" on a website

is a video that show:

  • the usage of Joomla extensions install/uninstall
  • the registration of Joomla Multi Sites
  • the installation of the patches

Troubleshooting:

  • During the installation of JMS
    • "JFolder::create: Could not create directory"
      This message is the symptom of a permission problem.
      You may have to consider the usage of FTP Layer to increase your rights.
      See step 15
    • "ERROR: Could not find a Joomla! XML setup file in the package."
      This is the symptom that you have a size limit to upload the file into Joomla.
      JMS has a size of more 1MB and if the file can not be uploaded completly, this may result in a corrupt file to install.
      Consider in this case to "unzip" the file into a temporary directory on your server and use the alternate Joomla installation based on a directory.
  • While installing the patches
    • "Unable to write entry"
      Error during installation of the file "administrator/includes/defines.php"
      "Copy failed"
      All those messages are the symptom of a problem of permission.
      To increase your rights, a simple method on Unix consists to use the FTP Layer.
      See step 15
4

What is a Symbolic Link ?

"symbolic link" is the unix equivalent ot the windows shortcut.
This allow to create a link between folders and create a bridge (a link) between different folders.
"Symbolic Links" may be used by JMS to redirect a slave sites directory to the master website directory.
This may be usefull when you have difficulties to setup the domain or the sub-domain to share the same directory than the master website.

The equivalent of Shortcut in PHP language does not exists but the equivalent of the Unix Symbolic Link may be available.

5

How to know if Symbolic Link is allowed by your hosting provider ?

The first condition is to be hosted on a Unix machine.
When you are hosted on a Windows platform, by definition the Symbolic Link in not allowed.

If you are on a Unix machine, all the hosting provider does not necessary accept to use the Symbolic Link for security reason.
If you want to know if your hosting provider accept the Symbolic Link, you can either :

  • checked that with Joomla Multi Sites. Go to next step (step 6).
  • or if JMS is not installed, you can use our "hello.zip" procedure that test this featur. See step 7
6

"How to know if Symbolic Link is allowed with JMS"

is a video that show:

  • The setting menu where you can find the "symbolic link" allowed value
  • The impact on the "slave site detail" that give access to the "deployed directory" parameter
If JMS answer that Symboli Link is forbidden, also retry with the "Hello World" procedure in the next step to have confirmation.
If the "Hello World" replies that Symbolic Link is present, then you have to check in you Global Configuration the path of the tmp and log directories.
Perhaps those temporary and log directories does not exists or correspond to a path that does not have enough permission to let JMS test the Symbolic Links.
  • Go in Joomla / Site / Global Configuration
  • Check the tmp and log path.
    Enter full path to a directory where you have permissions.
    In general, this is the root directory of you Joomla followed by /tmp (see server panel) and /log (see system panel)
7

How to know if Symbolic Link is allowed by your hosting provider with Hello Worl procedure

This video show:

  • Unzip of hello.zip file;
  • FTP transfer of hello.txt and hello.php
  • Show the result of hello.txt
  • Show the result of hello.php when Symbolic Link is present

You can also see also the FAQ How to test the hosting configuration

8

How to create a slave sites ?

Different possibilities exists to create a slave site

If you want create a website from the "back-end, different scenario are possible

  • How to create a slave sites into a sub-directory when Symbolic Link is allowed. Go to next step (step 9)
  • How to create a slave sites for a domain or sub-domain (see step 10)
    • When "Symbolic Link" is forbidden (Not allowed)
      • Share the same master directory
    • When "Symbolic Link" is allowed
      • Share the same master directory
      • Redirect the slave sites specific directory to the master directory using the Symbolic Link feature
  • How to create a websites from a "websites template"
    • How to create a "website template"
    • How to create a slave sites based on a "websites template"

If you want create a website from the "front-end", go to step x

  • How to propose a free website creation from the front-end
  • How to propose a "billable website" creation from the front-end

9

How to create a slave sites into a sub-directory of your main site ?

"How to create slave site into a sub-directory when Symbolic Links feature is allowed" is a video that show:

  • The check that that "symbolic links" is allowed
  • Because we use sub-directory, this avoid the setup of the hosting provider domain or sub-domain
  • Create an entry into Joomla Multi Sites
  • Install the slave site using the Joomla Installation
  • How to provide a specific table prefix into Joomla Installation

Sample values:

  • Site ID = slave1
  • Domain name = {site_url}/multisites/{site_id}
  • Deploy directory = {site_dir}
This will create a slave site that will request a fresh Joomla installation.
Becarefull to enter a new table prefix in the DB configuration using the advanced panel.
10

How to create a slave site for a domain or a sub-domain ?

  • Case where "Symbolic Links" is forbidden.
    In this case, all the domain and sub-domain must be assigined to the same directory than the master website directory.
    • How to setup your hosting provider to assign the same directory than your master website.
      See FAQ how to configure the hosting provider
      • How to install the "hello.zip" tool to check the hosting provider configuration. (See step 7)
      • How to check the hosting provider configuration
    • How to create a slave sites with a domain or a sub-domain with the same directory path
  • Case where "Symbolic Links" is allowed.
    In this case, you can either:
    • use the procedure to share the same directory than the master as defined just before;
    • Deploy the slave site into a specific directory.
      • Define the domain or sub-domain with your "hosting provider" as you do usually.
      • If you are not sure of the path of the slave sites, install the "hello.zip" into the directory proposed by your hosting provider
      • Define the slave sites into JMS and deploy it into the specific directory like when you deploy a slave site into a sub-directory (see step 9).
11

How to check the domain and sub-domain hosting provider configuration

See FAQ how to configure the hosting provider

How to create a slave site with a domain of sub-domain using the same directory path

This video shows:

  • A presentation of the architecture choosen
  • How to check the pre-requisite
    • How to check that both master domain and slave domain have the same directory path

When the domain or sub-domain share the same directory, the "deployed directory" field must stay empty.
This "deployed directory" field is only used when the directory path of the slave domain is not equal to the one of the master domain. This also require that Symbolic Link is allowed.

So in case where all the domain share the same directory, this field must stay empty.

Therefore, the minimum parameters that must be given are:

  • A site Identifier
  • The domain URL
12

How to create a "website template" ?

13

"How to propose a service to create a website from the FRONT-END"

This video show:

  • How to create a template to define the rule that will be used by the front-end when a website will be created
  • How to create a menu for the front-end
  • How to create a website using the menu create and the template created.
14 How to propose a "billable websites" creation from the front-end
15

How to setup the FTP Layer to increase the permission level

The FTP Layer is a Joomla feature only available for Unix platform.

The FTP Configuration is available when you install Joomla or after the installation into the Global Configuration.
When using the FTP Layer, this use the privilege of the user that you chosen for the FTP.
The FTP Layer is used to create folders, delete folders, create and delete files, write content into the files, ...

This Video highlight the point:

  • The setup of the FTP root path dugin the Joomla Installation: This is the relative path to the JMS site directory
  • The modification of the Joomla Global Configuration FTP to restore the master website FTP root path once the slave site is installed.

17

"Sample demo JMS 1.1.x that show how to use cPanel on HostGator"

This video:

  • Present the creation of 3 subdomain (master, slave1 and slave2) using the cPanel sub-domain configuration.
    The sub-domain have specific directories for each sub-domain
  • Show how to create a DB into the cPanel.
    Database that will be used by the master website and also by the slave 1 and slave 2 websites.
  • Present the installation of Joomla in the master website
  • Present how to install Jommla Multi Sites version 1.1.x in the master website
  • Show the defintion of slave 1 and slave 2 into Joomla Multi Sites and how to declare the domain and the deploy directory that must be identical to the one declare in the cPanel
  • Show the fresh joomla installation of the slave 1 and slave 2 websites
 
2Win, Multisite(s) are trademarks of Edwin2Win.
Joomla