Rješavanje problema
Rješenja uobičajenih problema i tehnike otklanjanja pogrešaka za XOOPS CMS.
📋 Brza dijagnoza
Section titled “📋 Brza dijagnoza”Prije nego što se upustite u određene probleme, provjerite ove uobičajene uzroke:
- dozvole za datoteke - Direktoriji trebaju 755, datoteke trebaju 644
- Verzija PHP - Osigurajte PHP 7.4+ (8.x preporučeno)
- Evidencije grešaka - Provjerite zapise grešaka
xoops_data/logs/i PHP - predmemorija - Obrišite cache u Admin → Sustav → Održavanje
🗂️ Sadržaj odjeljka
Section titled “🗂️ Sadržaj odjeljka”Uobičajeni problemi
Section titled “Uobičajeni problemi”- Bijeli ekran smrti (WSOD)
- Pogreške veze s bazom podataka
- Pogreške odbijene dozvole
- Greške pri instalaciji modula
- Pogreške kompilacije predloška
- Često postavljana pitanja o instalaciji
- modul FAQ
- Česta pitanja o temi
- Česta pitanja o izvedbi
Otklanjanje pogrešaka
Section titled “Otklanjanje pogrešaka”- Omogućivanje načina otklanjanja pogrešaka
- Korištenje Ray Debuggera
- Otklanjanje pogrešaka upita baze podataka
- Smarty Otklanjanje pogrešaka predloška
🚨 Uobičajeni problemi i rješenja
Section titled “🚨 Uobičajeni problemi i rješenja”Bijeli ekran smrti (WSOD)
Section titled “Bijeli ekran smrti (WSOD)”Simptomi: Prazna bijela stranica, nema poruke o pogrešci
Rješenja:
-
Privremeno omogućite prikaz pogreške PHP:
// Add to mainfile.php temporarilyerror_reporting(E_ALL);ini_set('display_errors', 1); -
Provjerite zapisnik grešaka PHP:
Terminal window tail -f /var/log/php/error.log -
Uobičajeni uzroci:
- Ograničenje memorije premašeno
- Fatalna sintaktička pogreška PHP
- Nedostaje potrebno proširenje
-
Rješavanje problema s memorijom:
// In mainfile.php or php.iniini_set('memory_limit', '256M');
Pogreške veze s bazom podataka
Section titled “Pogreške veze s bazom podataka”Simptomi: “Ne mogu se povezati s bazom podataka” ili slično
Rješenja:
-
Provjerite vjerodajnice u 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'); -
Ručno testirajte vezu:
<?php$conn = new mysqli('localhost', 'user', 'pass', 'database');if ($conn->connect_error) {die("Connection failed: " . $conn->connect_error);}echo "Connected successfully"; -
Provjerite uslugu MySQL:
Terminal window sudo systemctl status mysqlsudo systemctl restart mysql -
Provjerite korisničke dozvole:
GRANT ALL PRIVILEGES ON xoops.* TO 'user'@'localhost';FLUSH PRIVILEGES;
Pogreške odbijene dozvole
Section titled “Pogreške odbijene dozvole”Simptomi: Ne mogu učitati datoteke, ne mogu spremiti postavke
Rješenja:
-
Postavite ispravna dopuštenja:
Terminal window # Directoriesfind /path/to/xoops -type d -exec chmod 755 {} \;# Filesfind /path/to/xoops -type f -exec chmod 644 {} \;# Writable directorieschmod -R 777 xoops_data/chmod -R 777 uploads/ -
Postavite ispravno vlasništvo:
Terminal window chown -R www-data:www-data /path/to/xoops -
Provjerite SELinux (CentOS/RHEL):
Terminal window # Check statussestatus# Allow httpd to writesetsebool -P httpd_unified 1
Greške pri instalaciji modula
Section titled “Greške pri instalaciji modula”Simptomi: modul se ne instalira, greške SQL
Rješenja:
-
Provjerite zahtjeve modula:
- Kompatibilnost verzije PHP
- Potrebna proširenja PHP
- Kompatibilnost verzije XOOPS
-
Ručna instalacija SQL:
Terminal window mysql -u user -p database < modules/mymodule/sql/mysql.sql// In xoops_data/caches/rm -rf xoops_cache/*rm -rf smarty_cache/*rm -rf smarty_compile/* -
Provjerite sintaksu xoops_version.php:
Terminal window php -l modules/mymodule/xoops_version.php
Pogreške kompilacije predloška
Section titled “Pogreške kompilacije predloška”Simptomi: Smarty pogreške, predložak nije pronađen
Rješenja:
-
Očisti Smarty cache:
Terminal window rm -rf xoops_data/caches/smarty_cache/*rm -rf xoops_data/caches/smarty_compile/* -
Provjerite sintaksu predloška:
{* Correct *}{$variable}{* Incorrect - missing $ *}{variable} -
Potvrdite da predložak postoji:
Terminal window ls modules/mymodule/templates/ -
Regeneriraj templates:
- Administrator → Sustav → Održavanje → predlošci → Ponovno generiraj
🐛 Tehnike otklanjanja pogrešaka
Section titled “🐛 Tehnike otklanjanja pogrešaka”Omogući XOOPS način otklanjanja pogrešaka
Section titled “Omogući XOOPS način otklanjanja pogrešaka”// In mainfile.phpdefine('XOOPS_DEBUG_LEVEL', 2);
// Levels:// 0 = Off// 1 = PHP debug// 2 = PHP + SQL debug// 3 = PHP + SQL + Smarty templatesKorištenje Ray Debuggera
Section titled “Korištenje Ray Debuggera”Ray je izvrstan alat za otklanjanje pogrešaka za PHP:
// Install via Composercomposer require spatie/ray --dev
// Usage in your coderay($variable);ray($object)->expand();ray()->measure();
// Database queriesray($sql)->label('Query');Smarty Konzola za otklanjanje pogrešaka
Section titled “Smarty Konzola za otklanjanje pogrešaka”{* Enable in template *}{debug}
{* Or in PHP *}$xoopsTpl->debugging = true;Bilježenje upita baze podataka
Section titled “Bilježenje upita baze podataka”// 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";}❓ Često postavljana pitanja
Section titled “❓ Često postavljana pitanja”Instalacija
Section titled “Instalacija”P: Čarobnjak za instalaciju prikazuje praznu stranicu O: Provjerite zapisnike pogrešaka PHP, provjerite ima li PHP dovoljno memorije, provjerite dozvole za datoteke.
P: Ne mogu pisati na mainfile.php tijekom instalacije
O: Postavite dopuštenja: chmod 666 mainfile.php tijekom instalacije, zatim chmod 444 nakon.
P: Tablice baze podataka nisu izrađene O: Provjerite MySQL korisnik ima privilegije CREATE TABLE, provjerite postoji li baza podataka.
moduli
Section titled “moduli”P: Stranica modula admin je prazna O: Obrišite cache, provjerite admin/menu.php modula za pogreške u sintaksi.
P: Blokovi modula se ne prikazuju O: Provjerite dopuštenja za blokiranje u Administrator → Blokovi, potvrdite da je blok dodijeljen stranicama.
P: Ažuriranje modula nije uspjelo O: Sigurnosna kopija baze podataka, isprobajte ručna ažuriranja SQL, provjerite zahtjeve verzije.
P: tema se ne primjenjuje ispravno O: Obrišite Smarty cache, provjerite postoji li theme.html, provjerite dopuštenja za temu.
P: Prilagođeni CSS se ne učitava O: Provjerite put datoteke, očistite preglednik cache, provjerite sintaksu CSS.
P: Slike se ne prikazuju O: Provjerite putanje slika, provjerite dozvole mape uploads.
Izvedba
Section titled “Izvedba”P: Stranica je jako spora O: Omogućite predmemoriju, optimizirajte bazu podataka, provjerite ima li sporih upita, omogućite OpCache.
P: Velika upotreba memorije O: Povećajte memory_limit, optimizirajte velike upite, implementirajte paginaciju.
🔧 Naredbe za održavanje
Section titled “🔧 Naredbe za održavanje”Obriši sve predmemorije
Section titled “Obriši sve predmemorije”#!/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!"Optimizacija baze podataka
Section titled “Optimizacija baze podataka”-- 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 databaseProvjerite integritet datoteke
Section titled “Provjerite integritet datoteke”# Compare against fresh installdiff -r /path/to/xoops /path/to/fresh-xoops🔗 Povezana dokumentacija
Section titled “🔗 Povezana dokumentacija”- Početak rada
- Najbolje sigurnosne prakse
- XOOPS 4.0 Plan puta
📚 Vanjski resursi
Section titled “📚 Vanjski resursi”#xoops #troubleshooting #debugging #faq #errors #solutions