Install
Install Sym8 – the modernized Symphony CMS for PHP 8. This step-by-step guide explains system requirements, installation, and essential post-installation tips for a secure setup.
Installation guide
This guide will walk you through the installation of Sym8 step by step. With the recommended server setup, the whole process takes only a few minutes.
Server requirements
- A webserver (known to be used with Apache, Litespeed, Nginx)
- Apache’s
mod_rewrite
module or equivalent - PHP 8.0 - 8.4
- PHP’s LibXML module, with the XSLT extension enabled (
--with-xsl
) - PHP’s built in json functions, which are enabled by default in PHP 5.2 and above; if they are missing, ensure PHP wasn’t compiled with
--disable-json
gd
orimagick
library
Sym8 also requires a MySQL-compatible database.
✅ Recommended:
- MariaDB 10.3 – 11.x
- MySQL 5.5 – 8.0
MySQL 8.1+ and MySQL 11
MySQL 8.1+ and MySQL 11 have introduced changes that may affect installation or operation. If you’re using these versions, please make sure to disable ONLY_FULL_GROUP_BY
and check compatibility. Full support is planned for a future release.
Installing
-
Upload the entire
sym8
folder to your webspace and let your domain (e.g. example.com) point to that directory.For example:
If your server path is/home/username/web/example.com
, upload to/home/username/web/example.com/sym8
and point the domain to that directory. -
Open the
install
subdirectory in your web browser (e.g., https://example.com/install/) and enter the following details:- Website name and email address for outgoing messages
- Time zone and date format
- Details for the database (user, password, server, port)
- Author details
-
Please note that Symphony creates three pages during installation:
- Home (simple
index
page with Pico CSS) - Error page
403
(for directories without an index file) - Error page
404
- Home (simple
-
After successful installation, you can log in to the backend at
/symphony
using the credentials you just set.
Post install
Email delivery
Sym8 uses sendmail
by default for sending emails. For productive environments, we strongly recommend switching to SMTP
– eg. via your hosting provider or an external mailbox provider.
Email delivery
By default, emails are sent via sendmail
. Many mailbox providers treat these emails as unsafe and deliver them to the SPAM folder. Therefore, switch the email delivery method to SMTP
in the “Preferences”.
Create authors
To create and manage content in the backend, set up author accounts.
For security reasons, the developer account should not be used as an author and should remain reserved for administrative tasks only.
Note on extensions
Some extensions were intentionally not enabled during install. Please check the following extensions and install them manually:
- Duplicate Sections
- Import/Export CSV
- Maintenance Mode
- Media Library
- Register PHP-Functions
- Remote Datasource
- Upload fix JPEG Orientation
Remove installer
Don’t forget to remove the installer. It has done its duty — and leaving it on the server would be a serious security risk.
Update
Update Sym8 2.84.0+
Safe to use the built-in update function
Updates from Sym8 2.84.0 and later (e.g. future releases like 2.85.0) can be performed via the built-in update mechanism.
All database changes and bundled extensions are fully handled by the updater.
Update SymphonyCMS <= 2.7.10
Do not use the built-in update function
Older Symphony installations must not be updated via the built-in update mechanism. Doing so will break your installation irreversibly. There are two main reasons for this:
- Database changes: Sym8 uses
utf8mb4
and introduces new columns in several tables. The old updater does not apply these changes, which will lead to severe errors. - Extensions: Legacy extensions that are not part of the Sym8 package can cause errors and malfunctions if carried over without review.
How to upgrade manually
If you want to migrate an existing Symphony installation to Sym8, please proceed as follows:
- Back up your database and
/workspace
directory. - Install Sym8 fresh in a new location (new database).
- Migrate content:
- Recreate your sections, data sources, and events in the new installation.
- Use the opportunity to modernize your fields:
Replace text fields with regex validation (for email or number formats) by the new native HTML5 fields (email
,number
) to improve UX and mobile input handling. - Export your entries from the old instance via the extension Import/Export CSV.
- Import the entries into the new instance: The extension Import/Export CSV validates required fields and constraints (
required
,min
,max
, etc.) during import. This helps detect and skip broken records from your old instance.
- Migrate workspace assets: Move templates, stylesheets, scripts, and other assets from your old
/workspace
into the new one. - Review extensions: Only use extensions included in the Sym8 package. If you rely on custom or third-party extensions, check compatibility carefully before enabling them.
- Test thoroughly before going live.