Ezen az oldalon válaszokat talál a Moodle telepítésével kapcsolatosan leggyakrabban feltett kérdésekre. Ha nyomon követte a telepítési utasításokat, de mégis gondja támadt, feltehetőleg a legmegfelelőbb helyre érkezett.
Ha nem talál rá a keresett válaszra, próbálkozzék a Using Moodle elnevezésű kurzussal a moodle.org portálon. Néhány kulcsszó megadásával kezdje el a kutatást a fórumokban, hátha már esett bennük szó az adott problémáról. Ha semmit nem talál, próbáljon feltenni egy kérdést az érintett fórumra - általában valaki tud segíteni.
Ha végigpróbált egy sor megoldást és nem jutott eredményre, a rendszere pedig tűzfal mögött fut, megpróbálhatja újrakonfigurálni a tűzfalat, hátha az blokkolja valamely funkciót vagy kapcsolatot. A tűzfalak ritkán okoznak gondot a Moodle használata során, de a rossz beállítás esetleg csökkent működőképességet eredményezhet.
Az alábbi felsorolás alapján válassza ki a megfelelő választ:
PHP - telepítve van-e a gépen, és ha igen, melyik változat?
Az oldalaim végzetes hibát jeleznek, pl.: call to undefined function: get_string()
Miért kapok "headers already sent" (fejlécek elküldése már megtörtént) hibaüzeneteket?
Ezt a hibaüzenetet kapom: Failed opening required '/web/moodle/lib/setup.php'
A session_start hibaüzenetet kapom.
A rendszergazda oldalára térve a rendszer arra kér, hogy üres legyen a gyökérkönyvtár!
Forrás hozzáadásakor hibaüzenetet kapok.
A kezdeti beállítás során a rendszer nem kéri, hogy hozzak létre egy rendszergazda-felhasználót!
Nem tudok bejelentkezni - nem tudok továbblépni a bejelentkezési képernyőről.
Hogyan készíthetek biztonsági mentést a Moodle portálomról?
Miért nem jelzi a Moodle helyesen az időt és a dátumot?
Fórumaimról nem mennek ki e-mail másolatok
Például: Not Found: The requested URL /moodle/file.php/2/myfile.jpg was not found on this server.
Webszerverét be kell állítani úgy, hogy az URL kód utáni részét átadhassa a kódnak. Ez Apache 1 esetén általában be van kapcsolva, Apache 2 alatt viszont nincs. Bekapcsolásához szúrja be az alábbi sort a httpd.conf fájlba, vagy a helyi könyvtárban elhelyezett .htaccess állományba (részletek a Telepítési dokumentációban):
AcceptPathInfo on
A fenti sor CSAK Apache 2.x verzió esetén működik!
Ha nem Apache 2-t használ és mégis jelentkezik ez a probléma (kevéssé valószínű), a Moodle-t átállíthatja egy alternatív módszer használatára. Ennek hátránya a némi teljesítménycsökkenés és a HTML forrásokban a relatív ugrópontok használhatatlansága.
Az alternatív módszer használatához: jelentkezzen be rendszergazdaként, térjen át a "Változók" oldalra és módosítsa a "slasharguments" beállítását. Ezután elérheti a feltöltött állományokat.
Hozzon létre a portálján egy új állományt info.php névvel és az alábbi tartalommal, majd nyissa meg a böngészőjéből:
<?PHP phpinfo() ?>
Ha nem történik semmi, a PHP nincs telepítve. A telepítési dokumentumokban talál információkat arról, hogyan töltheti le a gépére.
Ellenőrizze a dirroot változót a config.php állományban. Teljes útvonalakat kell megadnia, pl.:
$CFG->dirroot = "d:\inetpub\sites\www.yoursite.com\web\moodle";
Redhat Linux platform esetén lásd: Redhat Linux
Ha ilyen hibaüzenetekkel találkozik:
Parse error: parse error, unexpected T_VARIABLE in c:\program files\easyphp\www\moodle\config.php on line 94
Fatal error: Call to undefined function: get_string() in c:\program files\easyphp\www\moodle\mod\resource\lib.php on line 11
akkor feltehetőleg kifelejtett egy pontosvesszőt vagy egy bezáró idézőjelet a config.php állományban (a 94. sor előtt).
Egy másik ok lehet, ha a config.php-t pl. Wordben nyitotta meg szerkesztésre, majd HTML-dokumentumként mentette el egyszerű szöveg helyett.
Ha ilyen hibaüzenetekkel találkozik:
Warning: Cannot add header information - headers already sent by (output started at /webs/moodle/config.php:87) in /webs/moodle/lib/moodlelib.php on line 1322
Warning: Cannot add header information - headers already sent by (output started at /webs/moodle/config.php:87) in /webs/moodle/lib/moodlelib.php on line 1323
Warning: Cannot add header information - headers already sent by (output started at /webs/moodle/config.php:87) in /webs/moodle/login/index.php on line 54
akkor a lezáró ?> után a config.php állományban szóközök vagy üres sorok maradhattak. Egyes szövegszerkesztők - pl. a Notepad Windowsban - néha ilyet szúrnak be, ezért más szerkesztővel kell ezeket eltávolítani.
A config.php állományban a dirroot változó beállításának a szerver merevlemezéhez a teljes útvonalat kell tartalmaznia.
Ha csak viszonylagos útvonalat ad meg a gyökérkönyvtárától vagy a webszerver könyvtárához viszonyít, az nem elegendő.
Az aposztrófok hibáit a nem megfelelő "magic quotes" beállítások okozzák. A Moodle-hoz az alábbi (általában alapbeállítás szerinti) beállításokra van szükség:
magic_quotes_gpc = On
magic_quotes_runtime = Off
További részletek a webszerver konfigurációjával kapcsolatban a telepítési dokumentációban olvashatók.
Ha ilyen hibaüzenetekkel találkozik:
Warning: session_start() [function.session-start]: open(/tmp\sess_d40f380d37d431fc1516e9a895ad9ce0, O_RDWR) failed: No such file or directory (2) in G:\web\moodle\lib\setup.php on line 123
Warning: session_start() [function.session-start]: open(/tmp\sess_d40f380d37d431fc1516e9a895ad9ce0, O_RDWR) failed: No such file or directory (2) in G:\web\moodle\lib\setup.php on line 123
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at G:\web\moodle\lib\setup.php:1) in G:\web\moodle\lib\setup.php on line 123
... ennek az az oka, hogy a PHP nem tud eseményfájlokat a merevlemezre menteni (egy /tmp nevű könyvtárba). Többnyire azért, mert NINCS a számítógépén /tmp nevű könyvtár. Ez általában Windows-telepítések esetén fordul elő.
Megoldásként állítsa be a PHP-t úgy, hogy létező könyvtárra mutasson. Ezt a php.ini fájlban teheti meg:
session.save_path = C:\temp
vagy a Moodle fő könyvtárában a .htaccess állományban:
php_value session.save_path "/home/moodle/sessions"
Ha ilyen hibaüzenetekkel találkozik a Moodle 1.0.9 verzióban:
Please fix your settings in config.php:
akkor Önnél a beállítás: $CFG->dirroot = "/home/users/fred/public_html/moodle"; e helyett: $CFG->dirroot = ""; |
mely hiba egyes szervereken jelentkezik. A gond a hibaellenőrző mechanizmussal van, nem a tényleges útvonallal. A hiba elhárításához térjen át erre a sorra (a 66.) az admin/index.php fájlban:
if ($dirroot != $CFG->dirroot) {
és módosítsa ekként:
if (!empty($dirroot) and $dirroot != $CFG->dirroot) {
Ellenőrizze, hogy az URL a $CFG->wwwroot beállításban megegyezik-e azzal, amelyet pillanatnyilag a portál elérésére használ.
Feltételezve, hogy Apache-ot használ, feltehetőleg a config.php $CFG->wwwroot beállítása eltér az elérésre ténylegesen használt URL-től. Próbálja meg kikapcsolni a "secureforms" beállítást az Adminisztrációban.
Ez ismert hiba volt a Moodle 1.0.9 változatáig, most már a törzskódban és az 1.1 verziótól ez javítva van.
A hiba nem mindenkinél jelentkezik és csak akkor fordul elő, ha a Moodle-t telepítő személy ugyanazon a portálon már rendelkezik a böngészőjében egy "user", "admin" vagy "teacher" nevű azonosítóval.
Gyorsan elhárítható a hiba, ha telepítés előtt törli a böngészőből a sütiket, egy másik böngészőt használ, vagy a moodle/admin/user.php fájlnak valahova az elejére beszúrja az alábbi sorokat:
unset($user);
unset($admin);
unset($teacher);
A hiba javítása után célszerű az adatbázis összes tábláját kitörölni és a rendszert újratelepíteni.
Ennek a leggyakoribb oka a számítógépén (nem a Moodle szerverén) lévő tűzfal, amely a hivatkozó információt elzárja a böngésző elől. Íme néhány utasítás ennek a kiküszöböléséhez Norton firewall products.
A szerver rendszergazdája úgyszintén kijavíthatja ezt a Moodle konfigurációs oldalának szerkesztésével és a "secureforms" változó "Nem"-re állításával.
A gond másik lehetséges oka lehet, hogy az események nincsenek megfelelően beállítva a szerveren. Ezt ellenőrizheti a http://yourserver/moodle/lib/session-test.php kód lefuttatásával.
Két fő dologról szükséges biztonsági másolatot készíteni: az adatbázisról és a feltöltött állományokról. Maguk a Moodle-kódok kevésbé fontosak, hiszen szükség esetén bármikor letölthető egy új példány.
Biztonsági másolat sokféleképpen készíthető. Unix alatt használhatja az alábbi kódot
cd /my/backup/directory
mv moodle-database.sql.gz moodle-database-old.sql.gz
mysqldump -h example.com -u myusername --password=mypassword -C -Q -e -a mydatabasename > moodle-database.sql
gzip moodle-database.sql
Az állományokhoz rendszeres időközönként használhatja az rsync kódot, mellyel a módosult állományokat egy másik gazdagépre másolhatja:
rsync -auvtz --delete -e ssh mysshusername@example.com:/my/server/directory /my/backup/directory/
Minden nyelvhez meghatározott nyelvi kódot (ún. locale) kell használni a megfelelő megjelenítéshez. A nyelvi csomagok tartalmazzák a standard kódokat, de ezek esetenként nem működnek Windows-szervereken.
A megfelelő locale kódjait Windowshoz ezen a két oldalon találja meg: Nyelvkódok és Ország/régiókódok.(pl. "esp_esp" spanyol esetén)
Az új locale kódjait megadhatja az Adminisztráció/Beállítások/Változók oldalon, ahol azok felülírják a kiválasztott nyelvi csomagban szereplőket.
Ahhoz, hogy a Moodle automatikusan kiküldjön a fórumokról, feladatokról stb. e-mail üzeneteket, megfelelő módon be kell állítania a cron-t. Ezzel a programmal végezhet egy sor más karbantartási tennivalót, például régi, vissza nem igazolhat felhasználókat törölhet, kiiratkoztathat régi tanulókat stb.
A programot úgy kell beállítania, hogy rendszeresen lefusson a http://yoursite/admin/cron.php. Lásd a részleteket a telepítési dokumentációban.
Ötlet: próbálja ki a Moodle változóinak oldalán az alapbeállításokat. Az smtphost maradjon üresen. Ez a legtöbb felhasználó esetén beválik.
Új GYFK feltevése (a választ is mellékelje!)
Köszönet John Eyre-nek ezen GYFK karbantartásában nyújtott segítségéért.
Verzió: $Id: faq.html,v 1.2 2006/08/27 08:45:50 koenr Exp $