Problemen oplossen
Oplossingen voor veelvoorkomende problemen en foutopsporingstechnieken voor XOOPS CMS.
📋 Snelle diagnose
Section titled “📋 Snelle diagnose”Voordat u ingaat op specifieke problemen, controleert u deze veelvoorkomende oorzaken:
- Bestandsrechten - Mappen hebben 755 nodig, bestanden 644
- PHP-versie - Zorg ervoor dat PHP 7.4+ (8.x aanbevolen)
- Foutlogboeken - Controleer de foutenlogboeken van
xoops_data/logs/en PHP - Cache - Cache wissen in Beheerder → Systeem → Onderhoud
🗂️ Sectie-inhoud
Section titled “🗂️ Sectie-inhoud”Veelvoorkomende problemen
Section titled “Veelvoorkomende problemen”- Wit scherm des doods (WSOD)
- Databaseverbindingsfouten
- Toestemming geweigerde fouten
- Module-installatiefouten
- Sjablooncompilatiefouten
- Installatie FAQ
- Module FAQ
- Thema FAQ
- Prestaties FAQ
Foutopsporing
Section titled “Foutopsporing”- Debug-modus inschakelen
- Ray Debugger gebruiken
- Foutopsporing in databasequery’s
- Smarty-sjabloonfoutopsporing
🚨 Veelvoorkomende problemen en oplossingen
Section titled “🚨 Veelvoorkomende problemen en oplossingen”Wit scherm des doods (WSOD)
Section titled “Wit scherm des doods (WSOD)”Symptomen: Lege witte pagina, geen foutmelding
Oplossingen:
- Schakel de PHP-foutweergave tijdelijk in:
// Add to mainfile.php temporarily error_reporting(E_ALL); ini_set('display_errors', 1);- Controleer het foutenlogboek PHP:
tail -f /var/log/php/error.log-
Veelvoorkomende oorzaken:
- Geheugenlimiet overschreden
- Fatale syntaxisfout PHP
- Ontbrekende vereiste extensie
-
Geheugenproblemen oplossen:
// In mainfile.php or php.ini ini_set('memory_limit', '256M');Databaseverbindingsfouten
Section titled “Databaseverbindingsfouten”Symptomen: “Kan geen verbinding maken met de database” of iets dergelijks
Oplossingen:
- Verifieer de inloggegevens in mainfile.php:
define('XOOPS_DB_HOST', 'localhost'); define('XOOPS_DB_USER', 'your_username'); define('XOOPS_DB_PASS', 'your_password'); define('XOOPS_DB_NAME', 'your_database');- Verbinding handmatig testen:
<?php $conn = new mysqli('localhost', 'user', 'pass', 'database'); if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } echo "Connected successfully";- Controleer de MySQL-service:
sudo systemctl status mysql sudo systemctl restart mysql- Verifieer gebruikersrechten:
GRANT ALL PRIVILEGES ON xoops.* TO 'user'@'localhost'; FLUSH PRIVILEGES;Fouten met geweigerde toestemming
Section titled “Fouten met geweigerde toestemming”Symptomen: Kan geen bestanden uploaden, kan instellingen niet opslaan
Oplossingen:
- Stel de juiste rechten in:
# Directories find /path/to/xoops -type d -exec chmod 755 {} \;
# Files find /path/to/xoops -type f -exec chmod 644 {} \;
# Writable directories chmod -R 777 xoops_data/ chmod -R 777 uploads/- Stel het juiste eigendom in:
chown -R www-data:www-data /path/to/xoops- Controleer SELinux (CentOS/RHEL):
# Check status sestatus
# Allow httpd to write setsebool -P httpd_unified 1Fouten bij het installeren van modules
Section titled “Fouten bij het installeren van modules”Symptomen: Module kan niet worden geïnstalleerd, SQL-fouten
Oplossingen:
-
Controleer de modulevereisten:
- Compatibiliteit met PHP-versie
- Vereiste PHP-extensies
- Compatibiliteit met XOOPS-versie
-
Handmatige SQL-installatie:
mysql -u user -p database < modules/mymodule/sql/mysql.sql- Modulecache wissen:
// In xoops_data/caches/ rm -rf xoops_cache/* rm -rf smarty_cache/* rm -rf smarty_compile/*- Controleer de syntaxis van xoops_version.php:
php -l modules/mymodule/xoops_version.phpFouten bij het compileren van sjablonen
Section titled “Fouten bij het compileren van sjablonen”Symptomen: Smarty-fouten, sjabloon niet gevonden
Oplossingen:
- Smarty-cache wissen:
rm -rf xoops_data/caches/smarty_cache/* rm -rf xoops_data/caches/smarty_compile/*- Controleer de syntaxis van de sjabloon:
{* Correct *} {$variable}
{* Incorrect - missing $ *} {variable}- Controleer of de sjabloon bestaat:
ls modules/mymodule/templates/- Sjablonen opnieuw genereren:
- Beheerder → Systeem → Onderhoud → Sjablonen → Opnieuw genereren
🐛 Foutopsporingstechnieken
Section titled “🐛 Foutopsporingstechnieken”XOOPS-foutopsporingsmodus inschakelen
Section titled “XOOPS-foutopsporingsmodus inschakelen”// In mainfile.phpdefine('XOOPS_DEBUG_LEVEL', 2);
// Levels:// 0 = Off// 1 = PHP debug// 2 = PHP + SQL debug// 3 = PHP + SQL + Smarty templatesRay Debugger gebruiken
Section titled “Ray Debugger gebruiken”Ray is een uitstekende foutopsporingstool voor PHP:
// Install via Composercomposer require spatie/ray --dev
// Usage in your coderay($variable);ray($object)->expand();ray()->measure();
// Database queriesray($sql)->label('Query');Smarty-foutopsporingsconsole
Section titled “Smarty-foutopsporingsconsole”{* Enable in template *}{debug}
{* Or in PHP *}$xoopsTpl->debugging = true;Logboekregistratie van databasequery’s
Section titled “Logboekregistratie van databasequery’s”// Enable query logging$GLOBALS['xoopsDB']->setLogger(new XoopsLogger());
// Get all queries$queries = $GLOBALS['xoopsLogger']->queries;foreach ($queries as $query) { echo $query['sql'] . " - " . $query['time'] . "s\n";}❓ Veelgestelde vragen
Section titled “❓ Veelgestelde vragen”Installatie
Section titled “Installatie”V: Installatiewizard toont lege pagina A: Controleer de foutenlogboeken van PHP, zorg ervoor dat PHP voldoende geheugen heeft en controleer de bestandsrechten.
V: Kan niet schrijven naar mainfile.php tijdens installatie
A: Stel machtigingen in: chmod 666 mainfile.php tijdens de installatie, daarna chmod 444 daarna.
V: Databasetabellen zijn niet gemaakt A: Controleer of de MySQL-gebruiker CREATE TABLE-rechten heeft, controleer of de database bestaat.
Modules
Section titled “Modules”V: Modulebeheerpagina is leeg A: Wis de cache, controleer de admin/menu.php van de module op syntaxisfouten.
V: Moduleblokken worden niet weergegeven A: Controleer de blokmachtigingen in Beheerder → Blokken, controleer of het blok aan pagina’s is toegewezen.
V: Module-update mislukt A: Maak een back-up van de database, probeer handmatige SQL-updates, controleer de versievereisten.
Thema’s
Section titled “Thema’s”V: Thema wordt niet correct toegepast A: Wis de Smarty-cache, controleer of theme.html bestaat, verifieer de themarechten.
V: Aangepaste CSS wordt niet geladen A: Controleer het bestandspad, wis de browsercache, verifieer de syntaxis van CSS.
V: Afbeeldingen worden niet weergegeven A: Controleer de afbeeldingspaden en verifieer de machtigingen voor de uploadmap.
PrestatieV: Site is erg traag
Section titled “PrestatieV: Site is erg traag”A: Schakel caching in, optimaliseer de database, controleer op langzame queries, schakel OpCache in.
V: Hoog geheugengebruik A: Verhoog de geheugenlimiet, optimaliseer grote zoekopdrachten, implementeer paginering.
🔧 Onderhoudsopdrachten
Section titled “🔧 Onderhoudsopdrachten”Wis alle caches
Section titled “Wis alle caches”#!/bin/bashrm -rf xoops_data/caches/xoops_cache/*rm -rf xoops_data/caches/smarty_cache/*rm -rf xoops_data/caches/smarty_compile/*echo "Cache cleared!"Database-optimalisatie
Section titled “Database-optimalisatie”-- Optimize all tablesOPTIMIZE TABLE xoops_config;OPTIMIZE TABLE xoops_users;OPTIMIZE TABLE xoops_session;-- Repeat for other tables
-- Or optimize all at oncemysqlcheck -o -u user -p databaseControleer de bestandsintegriteit
Section titled “Controleer de bestandsintegriteit”# Compare against fresh installdiff -r /path/to/xoops /path/to/fresh-xoops🔗 Gerelateerde documentatie
Section titled “🔗 Gerelateerde documentatie”- Aan de slag
- Beste praktijken op het gebied van beveiliging
- XOOPS 4.0-routekaart
📚 Externe bronnen
Section titled “📚 Externe bronnen”#xoops #troubleshooting #debugging #faq #errors #solutions