multi plugin

The multi plugins allow you to run multiple geeklog sites using one code base. You simply need a working geeklog site v. 1.7.1+ on a main domain and a parked domain.

This plugin is for experienced users. It is preferable that you have good knowledge of Geeklog, php and mysql. And remember to always test new plugins on your test site.

Multi plugin only works with mysql install.

Install

Read How to install a plugin.

When you install Multi Plugin, the plugin record your site as a main site and for security reasons you will not be able to install Multi Plugin on sites created with this plugin.

Usage

On Multi admin page you can display:

  • db-config.php
  • siteconfig.php
  • error.log

You can also erase the error.log file if needed.

Create a new site

Before creating a new site, you must have a parked domain. Domain parking is the registration of an Internet domain and set name servers for this domain.

How to Park a Domain

First, you have to go through the process of pointing the new domain namserver of the domain you want to park towards the main domain where you installed the multi plugin. That can be done by getting in touch with the registrar of the domains you want to park. Once it is pointed correctly, then you can easily complete the process from within your panel controls.

Steps For Parking a Domain with CPanel

  1. Logged in to your cPanel account
  2. Select the “Park Domain” feature to park additional domains at your website
  3. Remeber: Domain parking will not work if you haven't updated the domain nameservers of the domain you are parking to point to your accounts nameservers. Do that with your registrar first
  4. Enter the domain name you want to park in box provided
  5. Click the “Add Domain” button
  6. That's it. The domain is now parked.

To create a new site, hit the Create a new site link.

Create the site

The elements below must be writable to allow site creation:

  • siteconfig.php
  • db-config.php
  • data folder
  • logs folder
  • backups folder
  • public_html/backend folder
  • public_html/images folder

Multi plugin extend siteconfig and dbconfig files to handle other sites. The plugin also create new folders for each new site:

  • data/mynewsite
  • logs/mynewsite
  • backups/mynewsite
  • public_html/backend/mynewsite
  • public_html/images/mynewsite
  • public_html/images/mynewsite/library
  • public_html/images/mynewsite/topics
  • public_html/images/mynewsite/userphotos

On the site form you must provide the following informations:

  • Site name (Do not include TLD, no space, only letters and numbers): mysitename
  • tld(without point): com
  • Site Name (to display): My New Site
  • Site Slogan: A magic world
  • Database Hostname: localhost
  • Database Name: my_db_name
  • Database Username: db_user_name
  • Database Password: db_password
  • Site URL (No trailing slash):
    http://mysitename.com
  • Site Email: contac@mysitename.com
  • Site No-Reply: Email noreply@mysitename.com
  • Use UTF-8: Checkbox

All fields are require. The plugin need to connect to the new database, create new tables and save config value.

Log in

After the new site is created with Geeklog 1.7.1 database you can update to the last available version. Then you can go to your new site url and log into it using the default account:

Username: Admin
Password: password

And don't forget to change your password after logging in!

Custom

Go to the configuration page and custom your settings.

Go to the plugins administration page and install needed plugins.

Update all the sites

With Multi plugin 1.8.1 you can now update each database of the sites from Geeklog 1.7.1 version to Geeklog 1.8.1 version.

  1. You need first to upgrade multi plugin. Auto-upgrade by uploading the new plugin archive or upload all files from the archive with your favorite ftp software.
  2. Update all the sites databases before updating the main site.
  3. Update the main site database.
  4. Upload all new files from Geeklog 1.8.1 archive. Be sure to NOT include such files as db-config.php, public_html/siteconfig.php, system/lib-custom.php
  5. Done

And what about plugins

The main advantage of this setup is also its main limitation: All the resources are shared between sites. This is what we want for the source code, but it also happens for other files. This can be worked around in some cases but not in all of them. See Limitations and Workarounds http://wiki.geeklog.net/index.php/Multi-Site_Setup

All plugins will be available to all the sites. This does not mean, however, that they need to be installed for all of them. You can install, say, the Forum plugin for one site only. Just keep in mind that it will show up as an uninstalled plugin for all the other sites.

Plugins share all of their files with all of the sites. This may cause problems when the plugin stores files in fixed locations (e.g. configuration information that needs to be different for different sites).

Plugins Multi ready

sitemap

Of the plugins that ship with Geeklog, the XMLSitemap Plugin needs a special setup: The default name for the sitemap file is sitemap.xml and would be used by all the sites which would obviously cause confusion. Go to the XMLSitemap section in the Configuration and make sure you use a different file name for each site.

Note that due to the fact that all your sites share a single robots.txt you can not add the sitemaps to your robots.txt file. Instead, you will have to submit them manually for each site, e.g. via the Google Webmaster Tools.

dokuwiki

You will need to set the data folders use by each site in the public_html/dokuwiki/conf/local.protected.php file

/**
 * DokuWiki - Geeklog Integration Plugin
 *
 * This file holds configuration information specific to the
 * integration of DokuWiki with Geeklog.
 *
 */
 
if ($_SERVER['HTTP_HOST'] == 'www.mysite2.com' || $_SERVER['HTTP_HOST'] == 'mysite2.com') {
$conf['savedir']     = './data2';
}
if ($_SERVER['HTTP_HOST'] == 'www.mysite3.com' || $_SERVER['HTTP_HOST'] == 'mysite3.com') {
$conf['savedir']     = './data3';
}
 
/* --- Do not change anything below this line --- */
 
$conf['useacl'] = 1;
$conf['superuser'] = '@Root';
$conf['openregister'] = 0;
$conf['autopasswd'] = 0;
$conf['authtype'] = 'geeklog';
$conf['passcrypt'] = 'smd5';

Create a new data folder (i.e data2) under your public_html/dokuwiki folder and add attic, cache, index, locks, media, meta, pages and tmp folders in it.

Upgrade core and plugins

As the plugin do not support yet remote control, core and bundle plugins upgrades will be made with the traditional upgrade script. So, you need to visit each url namesite/admin/install/index.php and run the upgrade process.

For 3rd party plugin you need to log into each site and perform the upgrade process.

Todo

  • Check is elements are writable.

Releases

2.0 Future release

  • [todo] convert to COM_createHTMLDocument for Geeklog 2
  • [todo] keep a copy of db-config and siteconfig under data/multi
  • [todo] create a new site based on an existing site
  • [todo] allow to share a db with 2 or more sites

1.8.1 Next release

  • [new] multi can update database of each site to geeklog 1.8.1

1.7.1 First public relase November 14th 2010

Connecté en tant que : Guest (Guest)
plugins/multi.txt · Dernière modification: 2013/12/24 09:03 par ::Ben
 

Download geeklog

Last available version 2.1

Change language

Categories

Events

There are no upcoming events

User Functions





Don't have an account yet? Sign up as a New User!

Lost your password?

Visual Theme Switcher

Test out available themes by selecting from one of the 4 available themes or give the Visual Switcher a try:

Annonces

En ligne

Guest Users: 8