Installation Issues
Module Upload Failsโ
Problem: The module zip file won't upload through the Perfex admin panel.
Causes & Solutions:
| Cause | Solution |
|---|---|
| File size exceeds PHP upload limit | Increase upload_max_filesize and post_max_size in php.ini to at least 64M |
| Server timeout during upload | Increase max_execution_time in php.ini to 300 |
| Permissions issue | Check that the modules/ directory is writable (chmod 755) |
Alternative: Upload via FTP/SFTP instead:
- Extract the zip on your computer
- Upload the extracted folder to
your-perfex/modules/ - Activate via Setup โ Modules in the admin panel
Module Not Appearing After Uploadโ
Problem: You uploaded the module but it doesn't appear in Setup โ Modules.
Solutions:
- Make sure the folder structure is correct:
modules/saas/(notmodules/saas-module/ormodules/saas/saas/) - Check that all files were uploaded completely (compare file count)
- Clear your browser cache and refresh the page
- Check file permissions: the entire
modules/saas/directory should be readable by the web server
MySQL Verification Failsโ
Problem: Clicking "Click here to verify server settings" shows an error.
Error: "Access denied for user"โ
Cause: Wrong MySQL username or password.
Fix:
- Double-check your MySQL credentials
- If using cPanel, try using your cPanel username and password
- Test the credentials manually:
mysql -u your_username -p -h localhost
# Enter your password when prompted
# If you can log in, the credentials are correct
Error: "Can't connect to MySQL server"โ
Cause: MySQL is not running or wrong host/port.
Fix:
- Check if MySQL is running:
sudo systemctl status mysql - Verify the host is correct (usually
localhost) - Verify the port is correct (usually
3306) - If MySQL is on a different server, use that server's IP address
Error: "CREATE command denied"โ
Cause: The MySQL user doesn't have permission to create databases.
Fix:
-- Log in to MySQL as root:
GRANT ALL PRIVILEGES ON *.* TO 'your_username'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
Or in cPanel: Go to MySQL Databases โ User Privileges โ Check "ALL PRIVILEGES"
Blank White Page After Activationโ
Problem: After activating the module, you see a blank white page.
Solutions:
- Check PHP error logs: Look at
/var/log/apache2/error.log(Apache) or/var/log/nginx/error.log(Nginx) - Enable error display temporarily: Add to your
.htaccessorindex.php:ini_set('display_errors', 1);
error_reporting(E_ALL); - Check PHP version: Make sure you're running PHP 7.4 or higher
- Check memory limit: Set
memory_limit = 256Minphp.ini
Registration Form Not Showingโ
Problem: The landing page doesn't show a registration form.
Solutions:
- Make sure you've created at least one plan in SaaS Management โ Plans
- Check that registrations are enabled in SaaS Management โ SuperAdmin Settings โ Tenants Settings
- Verify the landing page URL is correct in Landing Page Settings
- Try selecting a different landing page template
- Clear your browser cache
Emails Not Being Sentโ
Problem: Welcome emails, verification emails, or invoice emails are not sent.
Solutions:
- Configure SMTP in Perfex CRM: Go to Setup โ Email โ Email Settings
- Recommended SMTP services:
- Gmail SMTP (free for up to 500 emails/day)
- SendGrid (free tier: 100 emails/day)
- Mailgun (free tier: 5,000 emails/month)
- Test email sending from Setup โ Email โ Send Test Email
- Check your spam folder โ emails might be landing there
SMTP is crucial! Without SMTP configured, no emails will be sent from your platform โ including verification emails, welcome emails, and invoices. Set this up first!
Tenant Database Not Createdโ
Problem: Tenant signs up but their database isn't created.
Solutions:
- Verify MySQL credentials in SaaS Settings (click the verify button)
- Check if your MySQL user has CREATE DATABASE privilege
- If on shared hosting, check if you've reached your database limit
- Check the SaaS Activity Log for error details
- Check PHP error logs for MySQL-specific errors
"Maximum database connections" Errorโ
Problem: Error about too many database connections.
Solutions:
- Increase MySQL
max_connectionsinmy.cnf:[mysqld]
max_connections = 200 - Restart MySQL:
sudo systemctl restart mysql - Consider optimizing your server (more RAM) if you have many tenants
Issue resolved? If you're still having problems, check Domain & DNS Issues or contact Support.