In this article we explain in just a few steps which packages need to be installed and configured.
The general system requirements apply.
When you want to use Ubuntu Linux as operating system, the server version 18.04 LTS "bionic" is recommended. In order to find out which version is used you can carry out the following command:
As system architecture you should use a x86 in 64bit:
x86_64 means 64bit, i386 or i686 only 32bit.
Installation of the Packages#
When you want to use the default package repositories, use the following instructions for installation of:
- the Apache web server 2.4
- the script language PHP 7.4
- the database management system MariaDB 10.5 and
- the caching server memcached
However, 18.04 LTS "Bionic Beaver" only has outdated packages that do not meet the System Requirements.
It is therefore necessary to install up-to-date packages via additional repositories.
For PHP 7.4 we use the Personal Package Archive from ondrej:
Additional third-party sources can endanger the system.
To add the repository we use:
The installation of the PHP packages is done afterwards:
1 2 3 4 5 6 7
Furthermore, Ubuntu 18.04 only provides outdated distribution packages for MariaDB. We therefore resort to the official third-party repository of MariaDB:
1 2 3
Once the key is imported and the repository is added, you can install MariaDB 10.5 from the MariaDB repository as well:
The installed packages for Apache web server, PHP and MariaDB already supply configuration files. It is recommended to save changed settings in separate files instead of adjusting the already existing configuration files. Otherwise, any differences to the existing files would be pointed out or even overwritten during each package upgrade. The settings of the default configuration are supplemented or overwritten by user-defined settings.
First of all, a new file is created and filled with the required settings:
This file has the following contents:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
The value (in seconds) of
session.gc_maxlifetime should be the same or greater than the
Session Timeout in the system settings of i-doit.
date.timezone parameter should be adjusted to the local time zone (see List of supported time zones).
Afterwards, the required PHP modules are activated and the Apache web server is restarted:
1 2 3
The default VHost is deactivated and a new one is created:
The new VHost configuration is saved in this file:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
i-doit includes differing Apache settings in files with the name .htaccess. The setting AllowOverride All is required so that these settings are taken into account.
With the next step you activate the new VHost and the necessary Apache module rewrite and the Apache web server is restarted:
1 2 3 4 5 6
Only a few steps are necessary to guarantee that MariaDB provides a good performance and safe operation. However, you should pay meticulous attention to details and carry out these steps precisely. This starts with a secure installation and you should follow the recommendations accordingly. The root user should receive a secure password:
Activate the MariaDB shell so that i-doit is enabled to apply the root user during setup:
Change from MariaDB 10.4 and upwards
From MariaDB version 10.4 and up, the UPDATE statement is no longer supported in the user table.
The following SQL statements are now carried out in the MariaDB shell:
Afterwards, MariaDB is stopped. Now it is important to move files which are not required, otherwise the result would be a significant loss of performance:
1 2 3
A new file is created for the deviating settings:
This file contains the new configuration settings. For an optimal performance you should adapt these settings to the (virtual) hardware:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
Finally, MariaDB is started:
Now the operating system is prepared and i-doit can be installed.
Proceed with Setup …