Make sure that your system meets the system requirements:
- Apache HTTP Server 2+
- With
mod_rewrite
- With
- PHP 8.1+
- With
intl
extension
- With
- MySQL 5+
(or equivalent MariaDB version)
This section is only relevant if you have cloned the repository directly from GitHub!
If you have downloaded a pre-made package from our website, continue with the installation.
- Install dependencies via Composer
(for the time being, we need to enforce it withcomposer install --ignore-platform-reqs
)
-
Setup the local configuration:
- Rename
config/init.php.dist
toinit.php
- Optionally edit and customize the
init.php
values - Rename
config/autoload/local.php.dist
tolocal.php
- Edit the
local.php
and insert your database credentials - Rename
public/.htaccess_original
to.htaccess
(if you experience webserver problems, try instead renamingpublic/.htacess_alternative
to.htaccess
)
- Rename
-
Enable UNIX write permission for
data/cache/
data/log/
data/session/
public/docs-client/upload/
public/imgs-client/upload/
-
Setup the database by calling the
setup.php
-
Delete the setup tool
public/setup.php
-
Delete any files in the following directory:
data/cache/
-
Optionally customize public files:
css-client/default.css
for custom CSSimgs-client/icons/fav.ico
imgs-client/layout/logo.png
(75x75)
If you run into any issues: Many problems have already been discussed and solved in the GitHub issue section.
Once you are satisfied with the system and want to use it in the wild, 🚨
please make sure to set the Apache document root directly to the public
directory
so that your domain will read like this:
https://example.com/
And not like this:
https://example.com/public/
The latter is a huge security threat, that is only acceptable while testing the system.
You may also consider to use a subdomain, like this:
https://bookings.example.com/
Simply copy custom or third-party modules into the modulex
directory and they will be loaded automatically.