System Requirements
For video based websites for best results you should have a main server (for ComusThumbz), a storage server and 1 or more video conversion servers. For the storage and covnersion servers you could use services that are available, just follow the links in our admin.
What This Page Covers
This guide explains what your web server needs to have installed before you can run ComusThumbz. If you've already installed ComusThumbz successfully, your server likely meets all these requirements. Use this guide when setting up a new server or troubleshooting issues.
Do I Meet the Requirements?
Quick Check
Most hosting providers that support modern PHP websites can run ComusThumbz. You need:
- A Linux server (Ubuntu, Debian, CentOS, or similar)
- PHP version 8.3 or newer
- MySQL or MariaDB database
- At least 2GB of RAM (4GB+ recommended for video sites)
- FFmpeg installed (required for video processing)
- IonCube
What ComusThumbz Can Do
When your server meets all requirements, you'll have access to these features:
- Upload and manage videos with automatic thumbnail generation and multiple quality options
- Create photo galleries with image processing and bulk uploads
- Host live webcam streams using real-time video technology
- Creator monetization including tips, subscriptions, and pay-per-view content
- Multiple languages supporting 25 languages from Arabic to Vietnamese
- Payment processing with support for Stripe, PayPal, CCBill, and 7 other providers
- CDN storage to offload video files to BunnyCDN, Wasabi, Backblaze, and other services
- Advanced analytics tracking views, clicks, earnings, and user behavior
- AI-powered tools to help review and organize content faster
Server Type: What Works Best
Recommended Hosting
Minimum Server Specs:
- 2 CPU cores (4+ recommended)
- 2GB RAM (4GB+ recommended)
- 10GB free disk space (more if storing videos locally)
- Ubuntu 22.04 or Debian 12
Not Recommended
- Video processing tools are usually blocked
- Not enough memory for video uploads
- Can't run background tasks needed for processing
- No control over server settings
If you're currently on shared hosting, you'll need to upgrade to a VPS to use video features.
Software Requirements
Web Server
Your server needs either Apache or Nginx to serve web pages.
Apache (most common):
- Must support
.htaccessfiles for clean URLs - Version 2.4 or newer
Nginx:
- Version 1.18 or newer
- Requires manual configuration for clean URLs
PHP Version
Required: PHP 8.3 or newer
ComusThumbz uses modern PHP features that only work in version 8.3 and above. Older versions (PHP 7.x or PHP 8.0-8.2) will not work.
Checking Your PHP Version:
If you have server access, run:
php -v
You should see something like: PHP 8.3.x
If you see a lower version (like 7.4 or 8.0), you'll need to upgrade PHP before installing ComusThumbz.
Database
Required: MySQL 5.7+ or MariaDB 10.3+
Recommended: MySQL 8.0+ or MariaDB 11.4+
Your database stores all your content, users, and settings. The newer versions provide better performance for large sites.
Video Processing Tool (FFmpeg)
- Uploaded videos stay stuck at "pending" forever
- No thumbnails or preview clips are generated
- Videos can't be converted to streaming formats
What is FFmpeg?
FFmpeg is a command-line tool that converts videos to different formats and creates thumbnails. It runs in the background automatically when users upload videos.
Checking if FFmpeg is installed:
ffmpeg -version
If you see version information, FFmpeg is installed. If you see "command not found," you'll need to install it or ask your hosting provider to install it.
PHP Settings That Need Adjustment
Several PHP settings control how large files you can upload and how long processing can run. These usually need to be increased from default values.
Important Settings
How to Check Current Settings
Create a file called phpinfo.php with this content:
<?php phpinfo(); ?>
Upload it to your site and visit it in a browser (example: https://yoursite.com/phpinfo.php). You'll see all PHP settings. Search for the setting names above to see current values.
phpinfo.php after checking settings - it reveals information about your server that shouldn't be public.PHP Functions That Must Be Enabled
Some hosting providers disable certain PHP functions for security. ComusThumbz needs these functions to work:
If these are disabled: Videos won't process, uploads will fail, and settings can't be saved.
How to enable them: Contact your hosting provider or edit php.ini if you have server access. Look for a line starting with disablefunctions = and remove any of the functions listed above.
Automatic Background Tasks (Cron Jobs)
- Videos stay stuck at "pending"
- Earnings aren't calculated
- Statistics don't update
What is a Cron Job?
A cron job is an automatic task that runs every minute in the background. It handles video processing, updates statistics, and performs other maintenance tasks.
Setting Up the Cron Job
You need to set ONE cron job that runs every minute:
The command:
php /path/to/your/site/ct/admin/cron/sitecron.php
Replace /path/to/your/site/ with your actual installation path.
cPanel users:
Go to Advanced > Cron Jobs
- Set timing to
(every minute) - Paste the command above with your correct path
- Click Add New Cron Job
HestiaCP users:
- Log in via SSH
- Run:
crontab -e - Add the cron line and save
Checking if it's working:
- Videos should move from "pending" to "active" within a few minutes of upload
- Go to Admin Panel > Cron Manager to see the last run time
HTTPS / SSL Certificate
- Accepting payments
- SEO (Google ranking)
- Browser security features
Most modern hosting providers offer free SSL certificates through Let's Encrypt.
cPanel: Go to SSL/TLS Status and click AutoSSL to get a free certificate
HestiaCP: Go to Web > [your domain] > Edit > SSL and enable Let's Encrypt
Manual setup: If you manage your own server, use Certbot:
sudo certbot --apache -d yourdomain.com
http:// to https://.Storage Space Planning
How Much Space Do I Need?
Where Files Are Stored
After installation, these folders will hold your content:
ct/uploads/videos/- Uploaded video filesct/uploads/images/- Images and thumbnailsct/cache/- Temporary files (can be cleared)ct/logs/- System logs
These folders need to be writable by the web server.
Live Streaming Requirements (Optional)
Live streaming requires Docker and LiveKit to be installed on your server.
What is Docker?
Docker is a tool that runs LiveKit (the streaming software) in an isolated container.
What is LiveKit?
LiveKit handles real-time video streaming between broadcasters and viewers.
System Requirements:
- Docker Engine 20.10 or newer
- Open ports: 7880, 7881 (TCP) and 50000-50020 (UDP)
- Separate server recommended for high-traffic streaming
Common Problems and Solutions
Videos Stay "Pending" Forever
What you see: You upload a video but it never appears on your site. In the admin panel, it shows status "pending."
Common causes:
- Cron job not running
- FFmpeg not installed
- PHP functions disabled
How to fix:
- Check if the cron job is running (see Admin Panel > Cron Manager)
- Test FFmpeg: Run
ffmpeg -versionvia SSH or ask your host - Check PHP functions: Create a test file to verify
exec()works - Contact support if the issue persists
Can't Upload Large Files
What you see: Upload fails for videos larger than 100MB.
How to fix:
- Increase PHP settings (
uploadmaxfilesizeandpostmaxsize) to at least 500M - Restart PHP-FPM after changing settings
- If on cPanel, use MultiPHP INI Editor
Permission Denied Errors
What you see: Errors about files or folders not being writable.
How to fix:
- Make sure folders have correct permissions:
ct/logs/should be writablect/uploads/should be writablect/cache/should be writable
- If you have SSH access, run:
chmod -R 775 ct/logs ct/uploads ct/cache - Contact your hosting provider if you don't have SSH access
Database Connection Failed
What you see: Error message about database connection on every page.
How to fix:
- Check that MySQL is running
- Verify database credentials in
ct/dat/config.inc.php - Make sure the database user has full permissions
- Contact your hosting provider for database issues
Checking Your Server Automatically
Requirements Check Script
Save this as checkrequirements.php in your site root and visit it in your browser:
<?php
echo "<h2>ComusThumbz Requirements Check</h2>\n";
echo "<pre>\n";
// PHP Version
$phpOk = versioncompare(PHPVERSION, '8.3.0', '>=');
echo "PHP Version: " . PHPVERSION . " " . ($phpOk ? '✅ OK' : '❌ Need 8.3+') . "\n\n";
// Extensions
$extensions = ['pdo', 'pdomysql', 'gd', 'curl', 'mbstring', 'json'];
echo "Required Extensions:\n";
foreach ($extensions as $ext) {
$loaded = extensionloaded($ext);
echo " $ext: " . ($loaded ? '✅ OK' : '❌ MISSING') . "\n";
}
// Functions
$disabled = explode(',', iniget('disablefunctions'));
$required = ['exec', 'shellexec', 'mkdir', 'chmod', 'fileputcontents'];
echo "\nRequired Functions:\n";
foreach ($required as $func) {
$ok = !inarray(trim($func), arraymap('trim', $disabled));
echo " $func: " . ($ok ? '✅ OK' : '❌ DISABLED') . "\n";
}
// Settings
echo "\nPHP Settings:\n";
echo " memorylimit: " . iniget('memorylimit') . "\n";
echo " maxexecutiontime: " . iniget('maxexecutiontime') . " seconds\n";
echo " uploadmaxfilesize: " . iniget('uploadmaxfilesize') . "\n";
echo " postmaxsize: " . iniget('postmaxsize') . "\n";
// FFmpeg
echo "\nExternal Tools:\n";
$ffmpeg = @shellexec('which ffmpeg 2>/dev/null');
echo " FFmpeg: " . ($ffmpeg ? '✅ Found' : '❌ NOT FOUND') . "\n";
echo "</pre>\n";
?>
This script checks:
- PHP version
- Required extensions
- Enabled functions
- PHP settings
- FFmpeg installation
Getting Help
Where to Look First
- Check the cron job - Most "videos not processing" issues are cron-related
- Verify FFmpeg is installed - Run
ffmpeg -versionto check - Review PHP settings - Make sure memory and upload limits are high enough
- Check folder permissions - Uploads folder must be writable
When to Contact Support
Contact your hosting provider if:
- You can't access PHP settings or cPanel
- FFmpeg isn't installed and you can't install it
- Database won't connect despite correct credentials
- Firewall issues are blocking connections
Contact ComusThumbz support if:
- Requirements are met but features still don't work
- You see specific error messages in the admin panel
- Configuration options aren't clear
Related Guides
Summary Checklist
Before installing ComusThumbz, verify you have:
- [ ] Linux server (VPS or dedicated, not shared hosting)
- [ ] PHP 8.3 or newer
- [ ] MySQL 5.7+ or MariaDB 10.3+
- [ ] At least 2GB RAM (4GB+ recommended)
- [ ] FFmpeg installed and working
- [ ]
exec()and related PHP functions enabled - [ ] PHP memory limit set to 512M or higher
- [ ] Upload max filesize set to 500M or higher
- [ ] Writable folders for uploads, logs, and cache
- [ ] Cron job capability (runs every minute)
- [ ] SSL certificate (free Let's Encrypt works great)
- [ ] 10GB+ free disk space
Need More Help? Check the Installation Guide next, or contact your hosting provider to verify server requirements.