Step 3 - ILIAS 8 Download and setup

Installing ILIAS

Create these directories outside the webspace:

mkdir /opt/iliasdata
mkdir /opt/iliasdata/lucene
mkdir /opt/iliasdata/log
mkdir /opt/iliasdata/errorlog

Change to Webserver directory:

cd /var/www/html

Download ILIAS latest via git and select the correct version:

git clone https://github.com/ILIAS-eLearning/ILIAS.git ilias
cd /var/www/html/ilias

To switch to ILIAS 8:

git checkout release_8

Install composer:

composer install --no-dev

Adjust the permissions settings:

chown -R www-data:www-data /var/www/html
chown -R www-data:www-data /opt/iliasdata
chmod -R 774 /var/www/html
chmod -R 770 /opt/iliasdata

Create a Database

It would be best if you had several Databases for all the services you want:

  • Every ILIAS-Installation needs one
  • One for Etherpad-Lite
mysql

Create Database "ilias": mysql>

CREATE DATABASE ilias CHARACTER SET utf8 COLLATE utf8_unicode_ci;

Create a user for a database and assign him to the ILIAS database

For now, we run our ILIAS client with mysql root rights. So this is very insecure. Every client should have its Database user. So we create one.

Create Database user "dbuser1": mysql> (replace USER_PASSWORD with your own secure password)

CREATE USER 'dbuser1'@'localhost' IDENTIFIED BY 'USER_PASSWORD';

Give user "dbuser1" rights to database "Ilias": mysql>

GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, INDEX, DROP, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES ON ilias.* TO 'dbuser1'@'localhost' IDENTIFIED BY 'USER_PASSWORD';
exit

Client-Creation, JSON-File

Creating a JSON file for configuration parameters

mkdir /opt/iliasdata/scripts/
mkdir /opt/iliasdata/scripts/clients
nano /opt/iliasdata/scripts/clients/clientname1.json

Paste these lines in:

{
"common" : {
    "client_id" : "Ilias"
    },
"database" : {
    "database" : "ilias",
    "user" : "dbuser1",
    "password" : "USER_PASSWORD"
},
"filesystem" : {
    "data_dir" : "/opt/iliasdata"
    },
"http" : {
    "path" : "https://iliastutorials.com/ilias"
    },
"language" : {
    "default_language" : "en",
    "install_languages" : ["en"]
    },
"logging" : {
    "enable" : true,
    "path_to_logfile" : "/opt/iliasdata/log/infosec.log",
    "errorlog_dir" : "/opt/iliasdata/errorlog/"
    },
"systemfolder" : {
    "contact" : {
    "firstname" : "Homer",
    "lastname" : "Simpson",
    "email" : "contact@iliastutorials.com"
    }
  },

"globalcache" : {
    "service" : "apc",
    "components" : {
    "clng" : true,
    "comp" : true,
    "events" : true,
    "global_screen" : true,
    "obj_def" : true,
    "ilctrl" : true,
    "tpl" : true,
    "tpl_blocks" : true,
    "tpl_variables" : true
    }
},

"style" : {
    "manage_system_styles" : true,
    "path_to_lessc" : "/usr/bin/lessc"
},

"pdfgeneration" : {
    "path_to_phantom_js" : "/usr/bin/phantomjs"
    },

 "preview" : {
    "path_to_ghostscript" : "/usr/bin/gs"
    },

"mediaobject" : {
    "path_to_ffmpeg" : "/usr/bin/ffmpeg"
    },

"chatroom" : {
            "address" : "chat.iliastutorials.com",
            "port" : 443,
            "https" : {
                    "cert" : "",
                    "key " : "",
                    "dhparam " : ""
            },
            "log" : "/opt/iliasdata/log/chat.log",
            "log_level" : "warning",
            "error_log" : "/opt/iliasdata/log/chaterror.log",
            "deletion_interval" : {
                    "deletion_unit" : "months",
                    "deletion_value" : "6",
                    "deletion_time" : "23:45"
            }
    },

"contact" : {
    "firstname" : "Homer",
    "lastname" : "Simpson",
    "title" : "Sir",
    "position" : "Security Inspector Sector 7G",
    "institution" : "Atomic Powerplant Springfield",
    "street" : "742 Evergreen Terrace",
    "zipcode" : "12345",
    "city" : "Springfield",
    "country" : "USA",
    "phone" : "",
    "email" : ""
    },

"utilities" : {
    "path_to_convert" : "/usr/bin/convert",
    "path_to_zip" : "/usr/bin/zip",
    "path_to_unzip" : "/usr/bin/unzip"
}
}

Creating the client itself

cd /var/www/html/ilias
php setup/setup.php install /opt/iliasdata/scripts/clients/clientname1.json

Adjust the permissions:

chown -R www-data:www-data /var/www/html
chown -R www-data:www-data /opt/iliasdata
chmod -R 774 /var/www/html
chmod -R 770 /opt/iliasdata

First Login

  • https://yourserver.com/ilias/login.php
  • User: root
  • Password: homer