📥 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.