Installation FAQ¶
Common questions and answers about installing XOOPS.
Pre-Installation¶
Q: What are the minimum server requirements?¶
A: XOOPS 2.5.x requires: - PHP 7.4 or higher (PHP 8.x recommended) - MySQL 5.7+ or MariaDB 10.3+ - Apache with mod_rewrite or Nginx - At least 64MB PHP memory limit (128MB+ recommended)
graph LR
A[PHP 7.4+] --> D[XOOPS]
B[MySQL 5.7+] --> D
C[Apache/Nginx] --> D Q: Can I install XOOPS on shared hosting?¶
A: Yes, XOOPS works well on most shared hosting that meets the requirements. Check that your host provides: - PHP with required extensions (mysqli, gd, curl, json, mbstring) - MySQL database access - File upload capability - .htaccess support (for Apache)
Q: Which PHP extensions are required?¶
A: Required extensions: - mysqli - Database connectivity - gd - Image processing - json - JSON handling - mbstring - Multibyte string support
Recommended: - curl - External API calls - zip - Module installation - intl - Internationalization
Installation Process¶
Q: The installation wizard shows a blank page¶
A: This is usually a PHP error. Try:
-
Enable error display temporarily:
-
Check PHP error log
- Verify PHP version compatibility
- Ensure all required extensions are loaded
Q: I get "Cannot write to mainfile.php"¶
A: Set write permissions before installation:
Q: Database tables are not being created¶
A: Check:
-
MySQL user has CREATE TABLE privileges:
-
Database exists:
-
Credentials in wizard match database settings
Q: Installation completes but site shows errors¶
A: Common post-installation fixes:
-
Remove or rename install directory:
-
Set proper permissions:
-
Clear cache:
Configuration¶
Q: Where is the configuration file?¶
A: Main configuration is in mainfile.php in the XOOPS root. Key settings:
define('XOOPS_ROOT_PATH', '/path/to/htdocs');
define('XOOPS_VAR_PATH', '/path/to/xoops_data');
define('XOOPS_URL', 'https://yoursite.com');
define('XOOPS_DB_HOST', 'localhost');
define('XOOPS_DB_USER', 'username');
define('XOOPS_DB_PASS', 'password');
define('XOOPS_DB_NAME', 'database');
define('XOOPS_DB_PREFIX', 'xoops');
Q: How do I change the site URL?¶
A: Edit mainfile.php:
Then clear cache and update any hardcoded URLs in database.
Q: How do I move XOOPS to a different directory?¶
A:
- Move files to new location
- Update paths in
mainfile.php: - Update database if needed
- Clear all caches
Upgrades¶
Q: How do I upgrade XOOPS?¶
A:
flowchart TD
A[Backup Database] --> B[Backup Files]
B --> C[Download New Version]
C --> D[Upload Files]
D --> E[Run Upgrade Script]
E --> F[Update Modules]
F --> G[Clear Cache]
G --> H[Test Site] - Backup everything (database + files)
- Download new XOOPS version
- Upload files (don't overwrite
mainfile.php) - Run
htdocs/upgrade/if provided - Update modules via admin panel
- Clear all caches
- Test thoroughly
Q: Can I skip versions when upgrading?¶
A: Generally no. Upgrade sequentially through major versions to ensure database migrations run correctly. Check release notes for specific guidance.
Q: My modules stopped working after upgrade¶
A:
- Check module compatibility with new XOOPS version
- Update modules to latest versions
- Regenerate templates: Admin → System → Maintenance → Templates
- Clear all caches
- Check PHP error logs for specific errors
Troubleshooting¶
Q: I forgot the admin password¶
A: Reset via database:
-- Generate new password hash
UPDATE xoops_users
SET pass = MD5('newpassword')
WHERE uname = 'admin';
Or use the password reset feature if email is configured.
Q: Site is very slow after installation¶
A:
- Enable caching in Admin → System → Preferences
- Optimize database:
- Check for slow queries in debug mode
- Enable PHP OpCache
Q: Images/CSS not loading¶
A:
- Check file permissions (644 for files, 755 for directories)
- Verify
XOOPS_URLis correct inmainfile.php - Check .htaccess for rewrite conflicts
- Inspect browser console for 404 errors