Installation

This is a generic SCHLIX CMS installation instruction with manual method. Related articles:

To begin installation, extract the schlix-cms-v2.x.zip ZIP file into the folder that you desire. If you wish to put SCHLIX CMS inside a subfolder, then simply rename the extracted schlix folder to the desired name (e.g. /site). If you want to run SCHLIX CMS on the main folder, move all the files including the hidden .htaccess file to the root folder. Sometimes the .htaccess file does not appear in the file manager so you may have to use command line to move it manually.

  1. Open your web browser and type the website address (e.g. localhost, www.my-website.com)


  2. There will be a check to ensure that the server meets the requirement. You will then be asked to fill in the database information. If the MySQL user does not have the permission to create a database, then you will need to create the database first. Click Test it and if everything works, then the green Continue Installation button will appear.
    SCHLIX CMS Installation - Database

  3. You will then be asked several settings such as the site identifier (first multisite), site name, administrator credentials, and default e-mail sender information.
    SCHLIX CMS Installation - Variables
  4. Once you've passed this section you will be asked whether you want to install a sample data or not. For production site, choose No.

Automated Installation

This section is intended for software installer vendors. You can automate the installation of SCHLIX CMS by just using HTTP POST to /install/index.php, then delete the /install folder once it is done. The following is a sample code on how to perform an automatic installation with just a single PHP script. The variables will be obtained from user input, which will be provided by your installer.

function __perform_http_post($url, $postvars)
{
    $str_postvars = '';
    foreach ($postvars as $key=> $value)
    {
        $str_postvars .= $key.'='.urlencode ($value).'&';
    }
    rtrim($str_postvars, '&');

    //open connection
    $ch = curl_init();

    //set the url, number of POST vars, POST data
    curl_setopt($ch,CURLOPT_URL, $url);
    curl_setopt($ch,CURLOPT_POST, count($postvars));
    curl_setopt($ch,CURLOPT_POSTFIELDS, $str_postvars);

    //execute post
    $result = curl_exec($ch);

    //close connection
    curl_close($ch);
    return $result;
}

function __perform_installation()
{

    $site_full_url = 'https://samplesite.com/siteprefixhttpbase';

    // To perform auto install, add auto_install = 9 to post variables
    $post_vars = array (
      'auto_install' => 9, // keep this to 9
      'agree_term' => true,  // must be set to true
      'db_host' => $db_host, // Host name
      'db_database' => $db_name,  // Database
      'db_username' => $db_user,   // Username
      'db_password' => $db_pass,  // Password
      'site_domain_name' => $url_domain,  // domain name without https
      'site_use_https' => false,  // true/false
      'site_httpbase' => $site_httpbase,  // the path relative to root
      'site_name' => $input['field_sitetitle'],  // Site Title, e.g. My Website
      'site_root_file_path' => $path,   // The root path of the installation
      'site_id' => 'main',  // This is the first site, keep this as "main"
      'email_from' => 'Webmaster',  // The sender name
      'email_address' => $input['field_email'],  // Default from email address
      'admin_username' => $input['field_login'],  // Admin username
      'admin_password' => $input['field_passwd'],  // Admin password
      'sampledata' => $input['field_sampledata'],  // 1 or 0
      'use_wildcard' => $input['field_usewildcard'],   // Wildcard
      'timezone' => $input['field_timezone']); // As in http://php.net/manual/en/timezones.php


   $exec_result = __perform_http_post($site_full_url.'/install/index.php',$post_vars);
}