How to install

This guide explains how to install Leconfe 1.5.3 on a new server using cPanel or shared hosting, Apache, Nginx, or a subdirectory.

Before you begin: Check the Leconfe system requirements. Leconfe 1.5.3 requires PHP 8.3 or later within the PHP 8.x series; PHP 8.1 and 8.2 are not supported.

Installation Overview

  1. Download the official packaged release.
  2. Create an empty database and database user.
  3. Upload and extract Leconfe.
  4. Point the domain document root to public.
  5. Set directory permissions.
  6. Run the web installer.
  7. Sign in and finish the initial configuration.

1. Download the Official Release Package

  1. Open the latest Leconfe release on GitHub.
  2. Expand Assets.
  3. Download leconfe-x.y.z.tar.gz. For version 1.5.3, use leconfe-1.5.3.tar.gz.

Do not use GitHub’s automatically generated Source code ZIP or TAR files. The named Leconfe archive is prepared for deployment.

2. Create the Database

In cPanel, open MySQL Databases or MySQL Database Wizard.

  • Create an empty MySQL or MariaDB database.
  • Create a user with a strong, unique password.
  • Assign the user to the database with all required privileges.
  • Keep the database name, user, password, host, and port ready for the installer.

Do not reuse a database that contains another application. Never publish database credentials in screenshots or support requests.

3. Upload and Extract Leconfe

  1. Upload the packaged archive to the application directory.
  2. Extract it.
  3. Confirm that app, bootstrap, config, public, resources, storage, and vendor are in the same application directory.
  4. After installation, remove the uploaded archive.

Avoid an extra level such as /leconfe/leconfe/public. The domain must point to the public directory inside the extracted application.

4. Point the Domain to the Public Directory

This applies to Apache and Nginx. Do not expose the application root. Set the domain or virtual-host document root to /path/to/leconfe/public.

Example of a Leconfe document root ending in the public directory
Example: the document root must end with the Leconfe public directory.

Apache

Enable mod_rewrite, permit the included .htaccess, and set DocumentRoot to the Leconfe public directory:

<Directory /path/to/leconfe/public>
    AllowOverride All
    Require all granted
</Directory>

Nginx

Set root to the Leconfe public directory and pass requests through the front controller:

root /path/to/leconfe/public;
index index.php;
location / { try_files $uri $uri/ /index.php?$query_string; }

Also configure the PHP 8.3 FPM handler. Its socket or address depends on the server.

cPanel or Shared Hosting

Open Domains, select the conference domain, and set its document root to the extracted Leconfe public directory. If the panel does not allow this, ask the hosting provider to configure it.

5. Set Directory Permissions

The web server must be able to write to storage and bootstrap/cache. Assign the correct owner and group and grant group write access. Avoid permission 777. On shared hosting, contact the provider if Leconfe reports that either directory is not writable.

6. Run the Web Installer

  1. Open the conference domain. If needed, visit https://your-domain.example/installation.
  2. Enter the database host, port, name, username, and password.
  3. Enter the site information and create the first administrator account.
  4. Review every value, then start the installation.
  5. Wait for the success screen. Do not close or refresh the page while the database is being prepared.
Leconfe web installation form
Complete the form with the database and administrator details prepared earlier. The layout may vary slightly by release.
Successful Leconfe installation screen
Continue only after Leconfe confirms that installation was successful.

7. Sign In and Complete the Initial Setup

  1. Sign in with the administrator account created in the installer.
  2. Configure email and send a test message.
  3. Configure date, time, and timezone.
  4. Enable HTTPS and confirm that /public is not visible in the public URL.
  5. Configure backups for the database and uploaded files.
  6. Configure scheduled and background tasks if queued email or asynchronous processing will be used.

Installing Leconfe in a Subdirectory

If https://example.org/conference/ redirects to https://example.org/installation, configure the subdirectory:

  1. Edit public/index.php.
  2. Find define('LECONFE_SUBDIR', '');.
  3. Change it to the folder name without slashes, for example define('LECONFE_SUBDIR', 'conference');.
  4. Save the file and open https://example.org/conference/installation.

This setting remains available in Leconfe 1.5.3. See the forum discussion and GitHub issue #637 for background.

Troubleshooting

  • Unsupported PHP: make sure both the website and command line use PHP 8.3.
  • Error 500: check PHP extensions, permissions, logs, URL rewriting, and that the document root points to public.
  • Database connection failed: check the host, port, name, user, password, and privileges.
  • Broken styles or links: check the application URL, HTTPS, document root, rewriting, and subdirectory setting.
  • Installer keeps returning: confirm it can write the environment configuration and create database tables.

Installing versus Upgrading

This guide is for a new installation. Do not install over an existing Leconfe website. Back up the site and use the Leconfe upgrade guide instead.

Video Guide for cPanel

This video demonstrates the general cPanel workflow. Panel screens may differ; follow the PHP 8.3 and document-root requirements above.

What are your feelings
Scroll to Top