Prepare your server.
Prepare PHP, a production database, secure files, scheduled work, and updates in a hosting control panel.
You can prepare ordinary shared hosting without terminal access. Hosting panels use different names, but they all need to complete the same small set of jobs.
The jobs every control panel must handle
- Select PHP 8.4.1 or newer for the Reward Loyalty domain.
- Enable the required PHP extensions.
- Create a MySQL or MariaDB database and a dedicated user.
- Connect the Reward Loyalty domain or subdomain to the hosting account.
- Turn on HTTPS.
- Upload and extract the package in the web root for that domain.
- Configure scheduled work after installation.
- Confirm how backups and restores work before launch.
If your panel uses a different label, contact hosting support and describe the job you need. You do not need to guess at an unfamiliar setting.
1. Select PHP and the extensions
Set PHP 8.4.1 or newer for the Reward Loyalty application domain. Enable every extension in the requirements list in the same panel.
You can also upload the temporary Reward Loyalty compatibility checker, open it once over HTTPS, and delete it immediately after reading the result. It checks the PHP used by the website and reports a few settings that may help hosting support.
If PHP 8.4.1 or a required extension is missing, contact hosting support and ask whether it can be enabled for this domain and plan.
2. Create the production database
Use MySQL or MariaDB for production.
- Create one database for this Reward Loyalty installation.
- Create a dedicated database user with a unique password.
- Give that user access to this database only.
- Save the database host, port, name, username, and password in your password manager.
Names may receive an automatic account prefix. That is normal. The database host is often localhost, but use the value shown by your panel.
SQLite is appropriate for evaluation and genuinely low-write installations. If you choose it, keep the database file protected and include it in every backup.
3. Prepare the web root
Create or connect the application hostname, such as loyalty.example.com. Use the web root that the host creates for that domain.
The extracted Reward Loyalty package opens at the application root. You will see app, bootstrap, config, public, and the other application files immediately. Upload every top-level file and directory, including the hidden .htaccess file, into the public web directory assigned to the application domain.
Do not upload only the package's internal public directory. The package already includes the rules that route browser requests into that directory. For the standard control-panel path, do not repoint the domain at the internal directory.
Reward Loyalty must own the hostname root. Install at loyalty.example.com, not at example.com/loyalty.
Keep the host's secure file ownership and permission defaults. The installer needs to write .env, and the application needs write access to storage and bootstrap/cache. Never set files or directories to 777.
cPanel
- Open MultiPHP Manager to choose PHP for the domain. Some shared hosts use CloudLinux and show Select PHP Version instead. Use the screen your host provides.
- In Select PHP Version, enable extensions under Extensions when that screen is available. If you only have MultiPHP Manager, ask support where extension changes are made.
- Use MySQL Database Wizard for the simplest database and user setup. On newer cPanel versions, the full database screen is called Manage My Databases; older accounts may call it MySQL Databases.
- Use Domains to add the application subdomain and enable Force HTTPS Redirect after its certificate works.
- Upload the package in File Manager, open the domain's web root, and extract the archive there.
- Use Cron Jobs after installation. If the form asks for a PHP path, ask support which value matches the PHP version selected for this domain.
hPanel
- Open Websites > Dashboard > PHP Configuration, and select PHP 8.4.1 or newer. This choice can apply to every site on the hosting plan, so review any other site on the account first.
- Use the extension and PHP options on that screen. Ask Hostinger support if an extension is unavailable.
- Create the database and user in Websites > Dashboard > Databases > Management. hPanel adds an account prefix to names, so copy the full values into the installer.
- Connect the application hostname to the site. Confirm its SSL certificate and HTTPS redirect are active.
- Upload and extract the package in the site's File Manager.
- Use Cron Jobs after installation. If hPanel rejects the value supplied in the scheduler guide, ask support to enter the equivalent task for this account.
Site Tools
- Open Devs > PHP Manager for the site and select PHP 8.4.1 or newer. A manually selected version may no longer follow the panel's managed PHP updates, so review it after host maintenance.
- Site Tools does not always expose individual extension switches. Contact SiteGround support and give them the required extension list if the checker reports a missing item.
- Create the database and user under Site > MySQL. Copy the generated names exactly.
- Use Security > SSL Manager to issue the certificate, then Security > HTTPS Enforce.
- Upload and extract the package in Site > File Manager.
- Use Devs > Cron Jobs after installation. Use the shortest interval the plan allows and ask support if the task fields are unclear.
- Review restore choices under Security > Backups before launch.
Plesk
- Open Websites & Domains, choose the application domain, open PHP, and select PHP 8.4.1 or newer.
- Review the version, extensions, and upload limits on that page. Contact support if an extension is fixed by the host.
- Create the database and dedicated user under Databases.
- Upload and extract the package in Files, inside the existing web root for the domain.
- Open SSL/TLS Certificates for the domain. Use SSL It! to issue the certificate and enable the HTTPS redirect after the certificate works.
- Use Scheduled Tasks after installation. The panel's Run a PHP script option is usually easier than a general command field; ask support to complete it if the account path is unclear.
- Review file and database restore choices in Backup Manager.
Website PHP and updater PHP
The dashboard updater starts a separate command-line PHP process. It can use a different PHP version from the website even on the same hosting account. You do not need a terminal command to compare them.
After installation, open Health Center. It reports the website and updater checks available to the application. If it reports different PHP versions, contact hosting support and ask them to align scheduled and updater PHP with PHP 8.4.1 or newer for this domain.
Scheduled work on shared hosting
Configure the Reward Loyalty scheduler every minute when the host allows it. If the plan offers only a longer interval, use the shortest interval available. Scheduled work runs when due, and normal dashboard traffic provides a traffic fallback for core loyalty work between runs. Check Health Center after the schedule has had time to run.
Dashboard updater prerequisites
The dashboard updater needs:
- PHP 8.4.1 or newer for its updater process;
- the PHP
execfunction; - archive support and enough free space for the uploaded package, extracted release, and backup;
- write access to the release, temporary, backup,
storage, and cache paths; - a private staging hostname for the rehearsal.
A host may disable exec on shared plans. That does not prevent installation and normal operation. If support cannot enable it, use the documented manual update path instead.
Next
Choose the website, application, email, and staging addresses in Domains, DNS, and HTTPS, then continue to Installation.