📥 Installation
This guide walks you through installing Monitron SaaS on your server, step by step. We'll cover everything from uploading the files to running the setup wizard.
📦 Step 1: Download & Extract
After purchasing Monitron SaaS from CodeCanyon:
- Download the ZIP file from your CodeCanyon downloads page
- Extract it to your desired location on the server
# Example: Extract to /var/www
cd /var/www
unzip monitron-saas.zip
This will create a monitron directory containing all the application files.
📁 Step 2: Understand the Directory Structure
Here's what's inside your Monitron installation:
monitron/
├── app/ # Application code (PHP)
├── bootstrap/ # Framework bootstrap files
├── config/ # Configuration files
├── database/ # Migrations and seeders
├── public/ # 👈 This is your web root!
│ ├── index.php # Entry point
│ ├── .htaccess # Apache rewrite rules
│ └── ...
├── resources/ # Views, assets, translations
├── routes/ # Route definitions
├── storage/ # Logs, cache, uploads
├── vendor/ # Composer dependencies
├── agent/ # Server agent scripts
├── .env.example # Environment config template
├── artisan # Laravel CLI tool
└── composer.json # PHP dependencies
🚨 CRITICAL: The public/ folder is your web root!
Your web server MUST point to the public/ directory, NOT the root monitron/ directory. Pointing to the root folder would expose your .env file (which contains your database password, API keys, etc.) to the internet!
📂 Step 3: Set File Permissions
The web server needs write access to certain directories:
cd /var/www/monitron
# Set ownership to your web server user
# On Ubuntu/Debian with Nginx:
sudo chown -R www-data:www-data .
# On CentOS/RHEL with Nginx:
sudo chown -R nginx:nginx .
# On Apache (any distro):
sudo chown -R www-data:www-data .
Now set directory permissions:
# Directories that need to be writable
sudo chmod -R 775 storage/
sudo chmod -R 775 bootstrap/cache/
Why 775? This gives the owner and group full access (read, write, execute) while giving others only read and execute access. The web server user (www-data or nginx) should be the owner or in the group.
📝 Step 4: Create the .env File
The .env file holds your application's configuration. Create it from the example:
cp .env.example .env
Don't worry about editing .env manually! The Installation Wizard (Step 6) will configure the database and other settings for you through a friendly web interface.
📦 Step 5: Dependencies & Application Key
Monitron SaaS ships with all dependencies pre-installed in the vendor/ folder. No Composer required!
The Installation Wizard automatically generates a secure application key (APP_KEY) during setup. You don't need to run any artisan commands — just proceed to the wizard!
For developers / advanced users: If you want to manage dependencies manually, you can run:
composer install --no-dev --optimize-autoloader
But this is entirely optional — the included vendor/ directory has everything you need.
🌐 Step 6: Configure Your Web Server
Point your web server to the public/ directory. We have detailed guides for each web server:
- 🟢 Nginx Configuration
- 🟠 Apache Configuration
- ⚡ LiteSpeed Configuration
- 🟡 Caddy Configuration
- 🔵 IIS Configuration
After configuring your web server, verify you can reach the application by visiting your domain in a browser.
Using shared hosting (cPanel, Plesk, DirectAdmin)? We have a dedicated guide for you! 👉 Installing on Shared Hosting — covers everything from uploading files to cron setup, with provider-specific instructions for Hostinger, Namecheap, SiteGround, Bluehost, GoDaddy, and A2 Hosting.
🧙 Step 7: Run the Installation Wizard
Now for the fun part! Open your browser and navigate to:
https://your-domain.com/install
The wizard will guide you through:
- Welcome — Introduction and overview
- Requirements Check — Verifies PHP extensions and permissions
- Database Setup — Configure and test your database connection
- Admin Account — Create your first administrator account
- Server Config — Shows you web server, cron, and Supervisor configs
- Complete! — You're done! 🎉
👉 See the Installation Wizard page for a detailed walkthrough of each step.
⏰ Step 8: Set Up the Cron Job
Monitron needs a single cron entry to dispatch scheduled checks. This is required for monitoring to work!
# Open the crontab editor for the web server user
sudo crontab -u www-data -e
Add this line:
* * * * * cd /var/www/monitron && php artisan schedule:run >> /dev/null 2>&1
What does this do? This tells your server to run Laravel's scheduler every minute. The scheduler then decides what needs to happen — dispatching monitor checks, checking stale heartbeats, running AI predictions, purging old data, etc.
Verify the cron is working:
# Run it manually to test
cd /var/www/monitron
php artisan schedule:run
You should see output like:
Running [dispatch-monitor-checks] ... 10ms DONE
Running [check-stale-heartbeats] .... 5ms DONE
🔄 Step 9: Set Up Queue Workers
Queue workers process monitoring checks asynchronously. Without them, Monitron won't perform any checks!