Table of Contents

Installation Guide

Open eClass 3.13

The Open eClass platform is a complete Course Management System. It is the solution offered by the Greek Academic Network GUnet to support Asynchronous eLearning Services. It is mainly designed, developed and supported by the GUnet Asynchronous eLearning Group and is distributed for free as open-source software.

The Open eClass has been tested and works without problems in:

Current version of Open eClass DOESN'T include database administration tool phpMyAdmin. If you wish, you can copy folder (path του eclass)/modules/admin/mysql/ in a temporary folder (e.g. /tmp). After upgrade has completed you can restore it to its previous location. Otherwise you can download latest version from here.

1. Actions before installation - Prerequisities

A series of applications needs to exist and operate in order for the eClass platform to be installed and operate as well. These applications are:

1.1 Web Server (Apache 2.x)

Apache has to be able to control pages of the .php type. If you have not set the server yet, adding the following line to the httpd.conf file is enough:

AddType application/x-httpd-php .php

You will also have to define that the default charset of pages sent by the Web Server is UTF-8. In Apache, this can be done by placing the following statement in the httpd.conf file:

AddDefaultCharset UTF-8

It is recommended, for security reasons, to deactivate directory indexing. Add the -Indexes option on the httpd.conf to the list of Options. If eClass is installed on /var/www/html, add the following statement to httpd.conf:

<Directory /var/www/>
................
Options -Indexes
................
</Directory>

1.3 NGINX

We assume that NGINX is configured properly for serving PHP files. Because of the 'Documents' platfrom subsystems the following change is necessary.

      location ~ [^/]\.php($|/) {
              location ~ \..*/.*\.php$ {
                      return  404;
              }
              include snippets/fastcgi-php.conf;
      #
      #       # With php5-cgi alone:
      #       fastcgi_pass 127.0.0.1:9000;
      #       # With php5-fpm:
              fastcgi_pass unix:/var/run/php5-fpm.sock;
      }
              

1.2 PHP (versions >= 8.0)

During PHP installation, it is important to activate the Apache support for PHP. Note that you will need to activate support for mysql, zlib, pcre, mbstring,intl, gd modules in PHP. If you wish to use an LDAP server to authenticate users, you have to activate the module for ldap support as well. Most of the PHP distributions have built-in support for these modules (except for the ldap module maybe). The above requirements are checked during Open eClass installation.

You will also have to define the following parameters on the php.ini file:

short_open_tag = off
magic_quotes_gpc = off
magic_quotes_runtime = off

As far as the maximum file size allowed to be uploaded on the platform is concerned, you can adjust it to the following lines in the php.ini file:

upload_max_filesize = 80M (predefined value is 2M)
memory_limit = 25M (predefined value is 8M)
post_max_size = 95M (predefined value is 8M)
max_execution_time = 100 (predefined value is 30 sec)

What is more, if a PHP notice comes up during the application, search for the display_errors variable in file php.ini and modify it in:

display_errors = Off

For Windows only.

Finally, you are advised to define the default charset again by the following line:

default_charset = "UTF-8"

As soon as you have finished with changes, restart Apache Web Server.

For starters, you can use the following settings in httpd.conf. (In the following example eclass is installed in /var/www/html/)

 <Directory /var/www/eclass>
  Options         FollowSymLinks
  AllowOverride   None
  DirectoryIndex index.php
  AddDefaultCharset utf-8    
  # php settings
  php_flag short_open_tag off
  php_flag magic_quotes_gpc off
  php_flag register_globals off
  php_flag html_errors off
  php_flag track_errors off
  # error handling
  php_flag display_startup_errors Off
  php_flag display_errors Off
  php_flag log_errors On
  # php operational limits
  php_admin_value max_execution_time 500
  php_admin_value max_input_time 120
  php_admin_value memory_limit 128M
  php_admin_value post_max_size 250M
  php_admin_value upload_max_filesize 250M
  php_admin_value default_charset utf-8
  php_admin_value file_uploads On
  php_admin_value session.gc_maxlifetime 7200
  </Directory>
  # protect some directories
  <Directory /var/www/eclass/config>
      Require all denied
  </Directory>
  <Directory /var/www/eclass/upgrade>
      Require ip 127.0.0.1
  </Directory>
  # selectively disable php
  <Directory /var/www/eclass/temp>
      DirectoryIndex index.html
      RemoveHandler .php
  </Directory>
  <Directory /var/www/eclass/video>
      DirectoryIndex index.html
      RemoveHandler .php
  </Directory>
  <Directory /var/www/eclass/courses>
      DirectoryIndex index.html
      RemoveHandler .php
  </Directory>
  # handle /courses URLs through index.php
  AliasMatch ^/courses/[A-Z_-]+[0-9]{1,5}/(index.php)?$ /var/www/eclass/index.php

Of course, you must modify eclass path and ip addresses.

1.4 Mail transport application (e.g. sendmail, postfix, exim)

Emails are sent during various platform operations (e.g. during users' registration). If there is no mail transport application or isn't configured correctly, platform emails are not sent.

For Windows only:

Alternatively, in order to install the above, use the EasyPHP package or XAMPP package.

2. Installation

2.1 Unix / Linux systems

Installation Process:

You can decompress the openeclass-3.13.tar.gz file using the tar xzvf openeclass-3.14.tar.gz command. The sub-directory created during decompression of the packet includes all the application files and has to be placed in an accessible point by the computer web server.

To give access rights to web server you can type the following commands (e.g. if the web server runs as a www-data user)

cd (path of eclass) (e.g. cd /var/www/html/openeclass)
chown -R www-data *
find ./ -type f -exec chmod 664 {} \;
find ./ -type d -exec chmod 775 {} \;		

Administrator's rights (root) are usually necessary for the above commands.

In order to start installing, visit the /install/ sub-directory address with a web browser.

If, for example, the main eclass directory is located in http://www.example.gr/openeclass/, the address you have to type is http://www.example.gr/openeclass/install/.

Current version of Open eClass DOESN'T include database administration tool phpMyAdmin. If you wish, you can copy folder (path του eclass)/modules/admin/mysql/ in a temporary folder (e.g. /tmp). After upgrade has completed you can restore it to its previous location. Otherwise you can download latest version from here.

Then follow the platform installation guide steps like the ones presented on your screen. Note that during the installation process you will be required the following:

2.2 MS Windows systems

Installation Process

Unzip the openeclass-3.14.zip file in the root directory of the Apache. The subdirectory created during the decompression of the package includes all files of the application. This sub-directory has to be placed in an accessible path by the web server.

In order to start installation, visit the /install/ sub-directory address with a web browser. If, for example, the main eclass directory is located in http://www.example.gr/openeclass/, the address you have to type is http://www.example.gr/openeclass/install/. Then follow the platform installation guide steps like the ones presented on your screen. Note that during the installation process you will be required the following:

3. Post install actions

3.1 How to modify test courses

Platform introduces 3 tentative / general Schools / Faculties. (Faculty 1-Code TMA, Faculty 2-Code TMB etc). You will have to change and adjust them to the Schools-Faculties of your own institute. You can do this through the administrator tool. You will find more and further information for these actions in the Administrator's manual (included in the administator tool).

3.2 Theme Options

If you want to change the default theme or creating a new one, login in platform as administrator and click in “Admin tools” / “Other Tools / Theme settings”.

3.3 How to modify messages

If you want to modify any message of platform then proceed with the following actions: Create a file of type .php with name english.inc.php (or greek.inc.php) and place it in directory (eclass path)/config/. Find the varible name which contains the message you wish to change and assing it the new message. e.g. If you want to change message

$langAboutText = "The platform version is";

create english.inc.php in directory (eclass path)/config/ like this:

<?php
$langAboutText = "Version is";
?>

With the above way, you preserve custom messages from future upgrades of platform.

You can modify the names of the basic roles of the users of the platform by modifying the message file (eClass_path)/modules/lang/english/common.inc.php You can add a text (e.g. informative) on the left and right of the platform homepage. For that reason, assign the value - message in variables $langExtrasLeft και $langExtrasRight, correspondingly in file (path του eClass)/modules/lang/english/common.inc.php

3.4 Support of mathematical symbols

You can type mathematical symbols. See further details in Mathematical symbols

3.5 Basic Settings

You can configure several options of platform. After logging as admin user, click in “Admin Tools” and after that, click in “Config Settings”. Among other, you can change the available languages (e.g. greek, german, italian) etc.

By default platform supports uploading of all the usual text, audio, video and image file types. If you desire to add a new file type, type its extension in 'Teacher while list' or 'Student while list' textarea correspondingly.

3.6 Other settings

Finally, it should be noted to the users of the platform that they need to have javascript activated on their browser.

For Unix / Linux systems only:

After completing installation, you are advised, for security reasons, to change access rights for the /config/config.php and /install/index.php files and allow reading only.

Persmissions must be set to 444

e.g. chmod 444 /config/config.php /install/index.php