ENcode

Updated 09/11/2023

System Requirements

eCarnival is a lightweight web application, with minimal resource requirements.

4GB RAM/2-Core Processor/Any OS

The eCarnival application, including the database, is less than 4MB.
The installation procedure outlined below should result in a total install size of less than 2GB,
including all components of the Apache, MySQL and PHP servers..

Your server will require an internet connection to register your installation, and to check for updates.

This installation guide will outline the instructions for installing eCarnival on a Windows server, but the configuration will also apply to installations on other operating systems.
For ease of setup, this installation will use the WampServer application to automatically install, run, and easily administer the Apache, MySQL and PHP servers.

Prerequisites

Ensure no other services are using port 80

Uninstall IIS and Microsoft SQL (to prevent port conflicts).

Download and Install the Visual Studio C++ Redistributables required for WampServer
(This link is for an all-in-one installer that will automatically install all required Redistributables.)

Download and run check_vcredist.exe to check that the required Redistributles have been successfully installed.

Download and install WampServer
(Proceed with all default installation options.)

Configuration

Apache Configuration

Double-click and run WampServer from the icon on the desktop.
(A green WampServer icon will appear in the system tray if all services have started successfully.)


Click the WampServer icon in the system tray.
Hover over Apache.
Click httpd-vhosts.conf

Find the line "Require local" and replace with "Require all granted".
Save and close httpd-vhosts.conf


Click the WampServer icon in the system tray.
Hover over Apache.
Click httpd.conf

Find the line "AddType application/x-httpd-php .php" and append ".phar", to get "AddType application/x-httpd-php .php .phar"
Save and close httpd.conf


PHP Configuration

Click the WampServer icon in the system tray.
Hover over PHP.
Hover over PHP settings
Untick "display_errors".

Click the WampServer icon in the system tray.
Hover over PHP.
Hover over PHP settings
Untick "display_startup_errors".


Click the WampServer icon in the system tray.
Hover over PHP
Click php.ini [apache module]

Find the line ";phar.readonly = On" and replace with "phar.readonly = Off"
(Ensure the semicolon is removed from the front of the line.)
Save and close php.ini


Add mysqldump command to Windows path

Press the Windows key and type "path".
Click "Edit the system environment variables."
Click "Environment Variables..."
Under "System variables", double click the "Path" variable.
Click "New" and then paste "C:\wamp64\bin\mysql\mysql9.1.0\bin"
(Check that the version number is correct.)
Press Okay, Okay, Okay, to exit Control Panel.

Open a new CMD window and type "mysqldump"
It should output:

Usage: mysqldump [OPTIONS] database [tables]
OR mysqldump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...]
OR mysqldump [OPTIONS] --all-databases [OPTIONS]
For more options, use mysqldump --help


Right click the WampServer icon in the system tray.
Click "Refresh"


Firewall Rules

Press the Windows key and type "firewall".
Click "Windows Defender Firewall with Advanced Security"
Click "Inbound Rules" on the left, and then click "New Rule..." on the right.
Select "Program" and click Next.
Click browse and navigate to "C:\wamp64\bin\apache\apache2.4.54.2\bin\"
Select httpd.exe and click Open
Click Next, Next, Next.
Name the rule "eCarnival", and click Finish.


Web Files

Navigate to "C:\wamp64\www\"
Create a new folder, named "default"
Move all other files and folders in the www directory into the new "default" folder.

Import eCarnival app and database.

Download and extract eCarnival

Move eCarnival.phar, index.php and favicon.ico into "C:\wamp64\www\"

Close File Explorer


Click the WampServer icon in the system tray.
Hover over PhpMyAdmin.
Click PhpMyAdmin.

For now, you can log in with the username "root" and a blank password.

Click the "Databases" tab at the top of the screen.
Under "Create database", in the "Database name" field, type "project_one" and click "Create" on the right.

Ensure "project_one" is selected in the panel on the left, then click the "Import" tab on the top.
Under "File to import:" click "Choose File". Browse to the directory containing the extracted eCarnival files, and select "eCarnival-db.sql" and click "Open".
Scroll down and click "Import"
A green banner should appear at the top of the screen with a message similar to: "Import has been successfully finished, 97 queries executed. (eCarnival-db.sql)"
Log Out of PhpMyAdmin and close the browser.

eCarnival Setup

You should now be able to access your eCarnival server from another device on your local network by navigating to your eCarnival server's IP address in a browser.

You will first be prompted to register your installation,
enter your license code and press enter.

You should now be presented with the eCarnival Login page.

Congratulations! Next, see the eCarnival Configuration Guide to set up your LDAP Same-Sign-On parameters and allocate users to eCarnival.

Troubleshooting

If you cannot connect to your server from another device on the local network, disable Windows Defender Firewall on your eCarnival server.

If the WampServer system tray icon stops responding,
you can safely terminate the AETrayMenu from Task Manager without affecting any other services,
and then run the WampServer app again to restart the system tray icon.