Installation Guide
Open eClass 3.16
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:
- Ms Windows
- MacOS X
- Various Linux distributions (e.g. RedHat, CentOS, Debian, Ubuntu, OpenSuse etc)
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.1)
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.
- In Windows extensions uncomment (;) from the line extension = php_ldap.dll
- Change the session.save_path variable to an existing path (e.g. session.save_path=c:\temp\). Also make sure that Apache has access rights in it.
- Fill in the SMTP server that serves you, e.g. SMTP = mail.gunet.gr
- Fill the field sendmail_from with a valid sender email address.
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.
1.3 Apache recommended settings
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.16.tar.gz file using the tar xzvf openeclass-3.16.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:
- The name of the computer MySQL is installed to (e.g. eclass.gunet.gr, localhost - if they are on the same computer)
- A 'username' and a 'password' for a mysql user with database creation and deletion rights.
- Name for the main eClass database (default is eclass). Change it however, if there is a database with the same name already.
- Platform URL (as this appears on the browser after installation e.g. http://eclass.gunet.gr/openeclass/)
- The file path on the server. Make sure that the path is right (e.g. /var/www/html/).
- Administrator's Name / Surname and email.
- Administrator's Username and Password.
- The name you would like to give to the platform (e.g. Open eClass).
- Phone number and email helpdesk (several applications meet this email, it could be the same as the administrator's).
- Name and address of your institute.
2.2 MS Windows systems
Installation Process
Unzip the openeclass-3.16.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:
- Computer hostname, in which MySQL is installed to (e.g. eclass.gunet.gr, localhost - if they are on the same computer)
- A 'username' and a 'password' for MySQL.
- Name for the main eClass database (default is eclass). Change it however if there is a database with the same name already.
- Platform URL (as this appears on the browser after installation e.g.http://eclass.gunet.gr/openeclass/).
- The file path on the server. Make sure that the path is right (e.g. C:\Program Files\Apache\htdocs\).
- Administrator's Name / Surname and email.
- Administrator's Username and Password.
- The name you would like to give to the platform (e.g. Open eClass).
- Phone number and email helpdesk (several applications meet this email, it could be the same as the administrator's).
- Name and address of your institute.
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 Internet Explorer users, choose consecutively Internet Options/Security/Custom Level/Security Options from the menu and check the “Scripting of java applets” option.
- For users Mozilla Firefox, choose consecutively Edit / Preferences / Web features from the menu and check the Enable Java script for Navigator option.
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