===== Installation Guide =====
Open eClass 3.11
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)
* Other UNIX environments (e.g. Solaris).
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 [[http://www.phpmyadmin.net/|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'':
................
Options -Indexes
................
**For Windows Only**
If Microsoft Webserver (IIS) runs on your computer, you will have to deactivate it.
* Follow Start->Programs->Administrative Tools->Services and
* click on 'stop' in order to stop the «World Wide Web Publishing Service».
* Click right on the service and
* click on «Disabled» from the «Startup type» options to disable IIS permanently.
==== 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.1.3 IIS ====
Platform works without problems under IIS although we haven't tested it in depth.
==== 1.2 PHP (versions >= 7.2) ====
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 and 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). Satisfaction of the above is 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:\winnt\temp\). Also make sure that the apache has access rights on 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/)
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
# protect some directories
Require all denied
Require ip 127.0.0.1
Require all denied
# selectively disable php
DirectoryIndex index.html
RemoveHandler .php
DirectoryIndex index.html
RemoveHandler .php
DirectoryIndex index.html
RemoveHandler .php
# 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.11.tar.gz file using the ''tar xzvf openeclass-3.11.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 [[http://www.phpmyadmin.net/home_page/index.php|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.11.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:
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
[[en:mathp|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