First-run deployment

A guided setup will verify this server, configure the application and databases, prepare background processing, and create the first Control Center administrator.

Step 1 of 7

Environment check

Confirm that Laravel can safely complete setup on this hosting account before any credentials or database changes are submitted.

PHP 8.3 or newer8.4.24
PDO MySQL extensionLoaded
OpenSSL extensionLoaded
Mbstring extensionLoaded
Tokenizer extensionLoaded
Fileinfo extensionLoaded
Storage is writable/home/tahleel/mtstarter-test.tahleel.net/storage
Bootstrap cache is writable/home/tahleel/mtstarter-test.tahleel.net/bootstrap/cache
.env can be created or updated/home/tahleel/mtstarter-test.tahleel.net/.env
Domain document root points to Laravel public/home/tahleel/mtstarter-test.tahleel.net/public
Current request uses HTTPShttps://mtstarter-test.tahleel.net
Environment ready. Required runtime, path, writability and HTTPS checks passed.
Recheck
Step 2 of 7

Application

Confirm the central hostname, tenant platform root and shared Laravel document root. Discovered values remain editable where appropriate.

Must match the hostname currently serving this installer.
Tenant URLs become tenantid.<platform-domain>.
Step 3 of 7

cPanel connection

Use an API token for the account that actually manages this deployment. The token is used for the live test and final installation, and is never redisplayed by the installer.

Public hostname with a trusted TLS certificate.
The token must manage the current hostname and tenant platform root.
Connection has not been tested in this browser session.
Step 4 of 7

Databases

The Control Center and tenant application use separate database users. Existing users are verified with the passwords you supply; the installer never silently changes an existing database-user password.

Central database

Tenant databases

This user receives access to each database as tenants are provisioned.
Database configuration has not been verified in this browser session.
Step 5 of 7

Background processing

Tenant creation and permanent deletion run as queued jobs. On shared cPanel hosting, the installer prepares a once-per-minute worker that exits when the queue is empty.

Automatic cron setup is available
/opt/alt/php84/usr/bin/php
/usr/bin/flock
* * * * * — once per minute
600 seconds, with database retry-after set to 900 seconds
'/usr/bin/flock' -n '/home/tahleel/mtstarter-test.tahleel.net/storage/framework/queue-worker.lock' '/opt/alt/php84/usr/bin/php' '/home/tahleel/mtstarter-test.tahleel.net/artisan' queue:work database --queue=default --stop-when-empty --tries=1 --timeout=600 # laravel-cpanel-multitenant-starter-queue-5a429f14aec2

During final installation, cPanel Cron Jobs is checked first. A matching managed entry is reused; otherwise the installer adds one and verifies it. If cPanel does not permit automatic cron management, installation can still finish with an explicit manual action.

Step 6 of 7

Administrator & options

Create the first Control Center administrator and choose the starter's initial tenant-user registration settings.

Step 7 of 7

Review & install

Review the non-secret deployment details before the installer creates or verifies cPanel resources and writes the production environment.

Application
Control Center
Tenant platform root
Document root
cPanel account
cPanel API token
Central database
Central DB user
Tenant DB user
Tenant DB prefix
Queue worker
Automatic cPanel cron will be attempted
Administrator
Installation is running. Keep this page open. If a hosting operation fails, the installer will preserve resumable state and report the failed step.