PMF d'instal·lació
PHP - està instal·lat? I quina versió?
Escriviu un fitxer al vostre lloc web que es digui info.php, que contingui el text que segueix, i aneu-hi des del navegador:
<?PHP phpinfo() ?>
Si no passa res, és que no teniu PHP instal·lat al servidor web, o no està preparat per tractar correctament fitxers .php. Llegiu els documents d'instal·lació per trobar la informació sobre el punt de descàrrega per al vostre servidor. Llegiu la pàgina phpinfo per obtenir-ne més detalls.
Informació del servidor per al fòrum d'instal·lació
Quan deixeu preguntes al fòrum d'instal·lació, procureu proporcionar tanta informació sobre l'entorn del vostre sistema moodle com sigui possible. Penseu a fer servir aquesta plantilla al missatge que envieu:
- Nom del sistema operatiu del servidor (també la versió, si pot ser):
- Nom del navegador (amb el n. de versió, si pot ser):
- Versió del Moodle:
- El fitxer de Moodle config.php adjuntat?(S/N):
- Phpinfo adjuntat? (S/N):
Per als dos darrers, procureu proporcionar aquestes informacions com a adjunts al vostre missatge:
- Una còpia de la sortida de phpinfo que apareix al vostre navegador (llegiu les instruccions anteriors que expliquen com fer-ho).
- Una còpia del fitxer de configuració del Moodle. El trobareu al directori moodle i es diu config.php
Copieu i enganxeu ambdues informacions en un fitxer de text simple ( amb el vi, el notepad, etc) i adjunteu-lo al missatge.
Si no podeu proveir el phpinfo, procureu copiar i enganxar i completar aquesta informació:
- Versió de l'Apache:
- Versió del MySQL:
- Versió del PHP:
En instal·lacions en servidors hostatjats: passeu per l'escriptori d'administració, que hauria de proporcionar-vos aquestes dades.
- Avís de seguretat: Assegureu-vos d'haver esborrat els mots de pas en aquests fitxers abans d'enviar-los al fòrum.
Quins són i on es desen els paràmetres de configuració del Moodle?
Els paràmetres de la configuració es desen al fitxer config.php, al directori moodle. Aquest fitxer es crea durant el procés d'instal·lació. Si hi ha algun problema i la instal·lació no pot crear el fitxer, podeu provar de crear-lo manualment amb l'ajut de la documentació sobre el Fitxer de configuració Fitxer de configuració. Si us plau, recordeu que no es recomana editar manualment el fitxer i podria arribar al punt que només es veiessin pàgines en blanc, especialment si hi ha espais addicionals i/o línies en blanc després de la marca de tancament del php ("?>").
Com passar un test de salut
El Moodle conté un script que us ajudarà a identificar problemes normals del PHP i la configuració del servidor web així com problemes de configuració. És interessant que feu córrer aquest script per comprovar si se us ha de presentar algun problema de postinstal·lació. Feu servir el vostre navegador per fer córrer aquest fitxer:
http://www.mymoodle.com/moodle/admin/health.php
Modifiqueu la línia si heu instal·lat el Moodle en l'arrel web en lloc d'un directori a dins de l'arrel web.
Qualsevol text que afegeixo amb una cometa simple (') o doble (") provoca errors o apareix amb una barra afegida
Els problemes provocats pels apòstrofs provenen de paràmetres "magic quotes" incorrectes. El Moodle necessita aquests paràmetres, que normalment són els que hi ha establerts, al fitxer php.ini:
magic_quotes_gpc = On magic_quotes_runtime = Off
Si us plau, vegeu Instal·lació del Moodle per llegir-ne alguna cosa més.
Les còpies del correu no s'envien des dels fòrums
Heu de preparar el cron adequadament si voleu que el Moodle enviï automàticament el correu des dels fòrums,
You must set up cron properly if you want Moodle to send out automatic email from forums, tasques, etc. Aquest mateix procés també porta a terme feines de neteja com ara esborrar usuaris antics no confirmats, desapuntar alumnes antics i altres.
Basicament, el que necessiteu és preparar un procés que cridi regularment l'script http://el_vostre_lloc/admin/cron.php
. Si us plau, vegeu les instruccions sobre cron.
Consell: Comproveu el paràmetre per defecte del Moodle a la pàgina de variables del Moodle. Deixeu el host smtp en blanc. Hauria de funcionar en la majoria dels casos.
Consell: Assegureu-vos que la variable allowuseremailcharset a Administració > Configuració > Variables > Correu estigui establerta en No. Deixar-la com a Si podria ser la causa del problema en algunes versions del Moodle.
Error: la connexió amb la base de dades no s'ha pogut establir (database connection failed)
Si us apareixen errors com ara "database connection failed" o "could not connect to the database you specified", pot ser per raons diverses i hi ha algunes solucions.
- El vostre sevidor de base de dades no està instal·lat o no treballa. Per comprovar-ho amb el MySQL, executeu aquesta comanda $telnet nom_del_servidor_de_dades 3306
- Hauríeu d'obtenir una resposta críptica que conté el número de la versió del servidor MySQL.
- Si feu córrer dues vegades el Moodle per ports diferents, utilitzeu la ip del host (no localhost) al paràmetre $CFG->dbhost. Per exemple, $CFG->dbhost = 127.0.0.1:3308.
- No teniu les Extensions PHP mysql o postgresql instal·lades (si us plau, llegiu la resposta de PMF, sobre si el PHP està instal·lat).
- No heu creat la Base de dades del Moodle i assignat usuari amb els privilegis corresponents per poder-hi accedir.
- Els paràmetres de la Base de dades del Moodle són incorrectes. El nom de la base de dades, el de l'usuari o el mot de pas al fitxer de configuració config.php són incorrectes. A través del phpMyAdmin podeu comprovar i preparar la instal·lació MySQL.
- Comproveu que el nom d'usuari i mot de pas MySQL no tinguin ni apòstrofs ni caràcters no-alfabètics.
- Potser feu servir la versió 4.1 de MySQL, o una de superior, però l'extensió PHP del MySQL és pre-4.1 (verifiqueu-ho a la informació de sortida de phpinfo). Si és així, l'algorisme de dispersió per defecte del mot de pas és incompatible amb el que hi ha a l'extensió PHP del MySQL a la versió 4.x.x. Amb aquestes comandes MySQL aconseguireu passar el mot de pas al format antic:
mysql>SET PASSWORD FOR 'root'@'localhost' = OLD_PASSWORD('mot_de_pas'); mysql>SET PASSWORD FOR 'moodleuser'@'localhost' = OLD_PASSWORD('mot_de_pas');
- També podeu pensar a actualitzar l'extensió PHP del MySQL. Vegeu http://dev.mysql.com/doc/mysql/en/old-client.html per obtenir una informació completa i fer el canvi.
- Feu servir Fedora core 3 o algun altre sistema Linux amb el SELinux instal·lat i activat. Vegeu la informació de la URL següent per saber com desactivar SELinux: http://fedora.redhat.com/projects/selinux/
- Usuaris Mac OSX -- si feu córrer MySQL en un Mac OSX, intenteu canviar $CFG->dbhost de 'localhost' a '127.0.0.1'
No puc entrar - Em manté a la pantalla d'identificació
La causa més probable d'això és que el vostre ordinador (no el servidor) té un tallafocs que retoca la informació del navegador. Aquí hi ha algunes instruccions per superar el problema Norton firewall products.
L'administració del servidor també podria estalviar el problema a tothom canviant la variable secureforms a 'No' a la secció de seguretat d'Administració >> Configuració >> Variables.
Una altra causa possible del problema és que les sessions no estan configurades adequadament al servidor. Podeu comprovar-ho amb una crida a l'script http://vostre_servidor/moodle/lib/session-test.php.
Si el problema persisteix, llegiu la pàgina No es pot entrar.
Continuo tenint aquest error: No s'ha pogut obrir ('Failed opening required') '/web/moodle/lib/setup.php'
Al fitxer config.php, el paràmetre que feu servir per establir la variable de la carpeta arrel ha de ser el camí complet des de l'arrel del disc dur del servidor.
Hi ha vegades que la gent utilitza només el camí des del seu directori arrel, o un camí relatiu fins a l'arrel del directori del servidor web.
Assegureu-vos que la URL del paràmetre $CFG->wwwroot
sigui exactament la mateixa que utilitzeu per accedir al lloc.
Les meves pàgines mostren errors fatals com ara : Parse error, call to undefined function: get_string()(error d'anàlisi, crida a una funció no definda: get_string() )
Si trobeu errors com aquests:
Parse error: parse error, unexpected T_VARIABLE in /path/to/moodle/config.php on line 94 Fatal error: Call to undefined function: get_string() in /path/to/moodle/mod/resource/lib.php on line 11
el més probable és que us hagiu oblidat de posar un punt i coma que acaba una de les línies del fitxer config.php (abans de la línia 94).
Una altra possibilitat és que hàgiu editat config.php amb un editor com l'OpenOffice o el Word i l'hàgiu desat com a pàgina HTML en lloc d'utilitzar un editor de text de format simple com ara el Mousepad o el Notepad.
Una altra cosa per comprovar, especialment si feu servir mòduls o connectors de tercers, és que no facin servir els marcadors d'inici curts (<? ?>) en lloc dels idonis (<?php ?>). Els marcadors curts són dolents per raons diverses, o sigui que primer entreu en contacte amb l'autor de l'extensió per explicar-li el problema. I després substituïu els marcadors pels convencionals o deixeu aquesta línia al fitxer php.ini:
short_open_tag = On
Mai no hauríeu de trobar marcadors curts en el codi central del Moodle. Si fos així, si us plau, indiqueu l'error al bug tracker.
Serious Error! Could not set up the site! (Error seriós! No es pot preparar el lloc!)
Adreceu-vos, si us plau al fòrum Using Moodle Serious Error! Could not set up the site!.
Amb fitxers carregats trobo l'error "Fitxer no trobat" ("File not found")
Per exemple: No trobat: la URL /moodle/file.php/2/el_fitxer.jpg was no es troba en aquest servidor.
El vostre servidor web s'ha d'haver configurat perquè la part de la URL que va despres d'un nom d'script es pugui passar directament a l'script. Normalment ja està previst a l'Apache 1, però habitualment està desactivat a l'Apache 2. Per activar la característica, afegiu aquesta línia al vostre fitxer httpd.conf, o a un fitxer .htaccess al vostre directori del lloc. (vegeu Instal·lació del Moodle per saber-ne una mica més):
AcceptPathInfo on
Entengueu que només és funcional amb les versions 2.x de l'Apache.
Si no feu servir l'Apache 2 i encara teniu aquest problema (és difícil) llavors podríeu corregir Moodle perquè utilitzés un mètode alternatiu. El desavantatge és una lleugera pèrdua de velocitat amb els usuaris i la impossibilitat de fer servir vincles relatius enmig dels recursos HTML.
Si heu d'utilitzar aquest mètode alternatiu, haureu de canviar la variable slasharguments a la secció del Sistema Operatiu d'Administració >> Configuració >> variables. Amb això ja hauríeu de poder arribar als fitxers carregats.
Quan vaig a la pàgina d'administració, se'm diu que deixi dirroot en blanc!
Si se us presenta un error com aquest:
Please fix your settings in config.php: You have: $CFG->dirroot = "/home/users/fred/public_html/moodle"; but it should be: $CFG->dirroot = "";
us heu trobat amb un bug que apareix en alguns servidors. El problema es presenta en el mecanisme de comprovació d'errors, no en el camí establert. Per resoldre'l, cerqueu aquesta línia (línia 66) al fitxer admin/index.php:
if ($dirroot != $CFG->dirroot) {
i canvieu-la per aquesta:
if (!empty($dirroot) and $dirroot != $CFG->dirroot) {
El moment de afegir un recurs apareixen missatges d'error
Suposem que feu servri l'Apache. Aleshores és molt probable que el contigut de la variable $CFG->wwwroot
del fitxer config.php sigui diferent de la URL que feu servir en aquest moment. A més hauríeu de deixar en off la variable secureforms a la secció de seguretat d'Administració >> Configuració >> Variables.
Per què totes les pàgines apareixen en blanc?
Comproveu la variable dirroot al fitxer config.php. Hi heu d'indicar camins complets, absoluts. Per exemple:
$CFG->dirroot = "d:\inetpub\sites\www.el_vostre_lloc.com\web\moodle";
Una altra raó: el PHP no està preparat per treballar amb el MySQL. Sol passar en instal·lacions RedHat i OpenBSD. Si es tracta d'això es generarà un error, però com que les informacions d'errores desactiven per defecte, tot el que apareix és la pàgina en blanc. A fi d'activar la presentació d'errors del PHP, escriviu aquestes línies al fitxer php.ini i refresqueu la pàgina web:
display_errors = On display_startup_errors = On
Per saber si el problema és el suport al MySQL, inseriu això com a segona línia del fitxer config.php
phpinfo();
i refresqueu la pàgina web. Repasseu l'informe que es presentarà detalladament per esbrinar si el suport MySQL hi és present. Si no fos així, reviseu la instal·lació al servidor, perquè us pot fer falta algun altre paquet del sistema.
Per què una pantalla en concret apareix en blanc o incompleta?
Comproveu els fitxers log del servidor!!
Si només alguna pàgina en concret apareix en blanc o és incompleta (no mostra la base, per exemple), abans de fer res més, comproveu els vostres fitxers de registre (.log).
El PHP pot marcar com registrar errors de moltes maneres. Les formes de fer-ho estan contingudes al fitxer php.ini del servidor. Si no sabeu on és, editeu el vostre fitxer de configuració Moodle config.php i afegiu el següent com a segona línia
phpinfo();
i refresqueu la pàgina web. Cerqueu l'entrada Configuration File (php.ini) Path.
Quan tingueu localitzat el php.ini obriu-lo amb el vostre editor de text. Cerqueu-hi la secció Error handling and logging. Assegureu-vos que les definicions display_errors = On i log_errors = On hi siguin i estiguin descomentades. Comproveu el valor de error_log - que informa la localització del fitxer de registre d'errors. Si està comentat, els errors s'adrecen al fitxer de registre de d'errors del servidor web. Recordeu que si feu qualsevol canvi al fitxer haureu de reiniciar el servidor web (o simplement reiniciar el servidor).
Havent establert que el registre treballarà, reproduïu l'error. Immediatament comproveu el fitxer de registre d'errors, directament a la zona final. Per sort hi veureu un missatge d'error del PH, a la fi o prop de la fi del fitxer. O bé us farà veure el problema directament o bé us en farà més fàcil de diagnosticar el problema als fòrums del Moodle.
La instal·lació fracassa en voler preparar les taules de la base de dades
- Algunes vegades pot passar que la instal·lació es penja en preparar les taules. Es penja bruscament i presenta mitja pàgina al navegador i/o altres sortides desaparegudes, per exemple apareix el vincle “Scroll to continue” però no hi ha el botó “Continua”. Si és així, es tracta normalment d'un error mysql i no és cap error php. Comproveu que no hi hagi alguna limitació a la vostra base de dades mysql, per exemple un límit de "qüestions".
- Si la installació és en un servidor hostatjat, afegir
AddType x-mapp-php5 .php
al fitxer .htaccess del directori moodle ha estat una bona solució per resoldre el problema.
- També podeu provar de canviar el nom al fitxer .htaccess perquè quedi desactivat.
Per què no puc carregar una altra imatge al meu perfil?
Si no veieu res a les pàgines del vostre perfil d'usuari que us permeti carregar imatges d'usuari el que pot passar és que la biblioteca GD no està activa al sevidor. La biblioteca GD s'encarrega de processar les imatges.
1. Comproveu que s'hagi inclòs GD a la instal·lació del PHP. Ho podreu saber accedint a Administració >> Configuració >> Variables i cercant les indicacions de la versió instal·lada de GD. Aquest valor s'estableix cada vegada que accediu a la pàgina. Si mostra que la versió de la GD és la 1 o la 2, tot sembla estar bé. Deseu la configuració i torneu al perfil.
2. Si el Moodle no troba la GD instal·lada, caldrà instal·lar-la. Al Windows és qüestió d'activar el mòdul al PHP ( vegeu les instruccions d'instal·lació per saber-ne més cosa). Al Unix potser haureu de recompilar el PHP amb arguments com aquests:
./configure --with-apxs=/usr/local/apache/bin/apxs --with-xml --with-gd --with-jpeg-dir=/usr/local --with-png-dir=/usr --with-ttf --enable-gd-native-ttf --enable-magic-quotes --with-mysql --enable-sockets --enable-track-vars --enable-versioning --with-zlib
3. Recordeu-vos de tornar a passar per la pàgina de configuració del Moodle després d'haver fet canvis al PHP perquè pugui agafar la versió correcta de la GD.
Si us plau, seguiu la discussió Profile pictures dels fòrums moodle per tenir informació addicional del tema.
Per què apareixen missatges d'error com aquest: "headers already sent"?
Si veieu missatges com aquests:
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
és que teniu espais o línies en blanc després del marcador final ?>
al fitxer config.php. Algunes vegades els editors de text els afegeixen - per exemple el Notepad al Windows - i hauríeu de fer servir un altre editor de text per eliminar aquests espais o línies en blanc completament.
Per què el meu lloc moodle no mostra data i hora correctament?
Cada idioma necessita un codi específic de la llengua (anomenat codi 'locale) perquè les dates es presentin correctament. Els paquets del codi d'idioma contenen codis estàndard, però a vegades no treballen correctament en servidors Windows.
Trobareu els codis locale correctes per al Windows en aquestes dues pàgines: Language codes i Country/region codes (per exemple, "esp_esp" per a l'idioma "espanyol")
Aquests codis locale nous es poden escriure a la pàgina d'Administració >> Configuració >> Variables, substituint les que hi hagi en la variable locale com a paquet d'idioma.
En una cerca per les pàgines esmentades, no s'han trobat les definicions de locals corresponents a la llengua catalana per al Windows.
No puc entrar i rebo el missatge "Please verify that the current setting of session.save_path is correct"
Vegeu aquest resum del fòrum Using Moodle
Com ho faig per desinstal·lar el Moodle?
Moodle package installation: Si heu descarregat un paquet del Moodle, simplement desinstal·leu-lo per la via que desinstal·leu altres programes. Al Windows, accediu al Tauler de control -> Afegir/Eliminar programes. Trieu el paquet i feu clic a Canviar/Treure programa.
hostatge web/instal·lació manual: Si heu instal·lat el Moodle manualment, seguiu aquests passos:
- Esborreu la bases de dades del Moodle amb la comanda mysql (o fent servir un programa client, per exemple el PHPMyAdmin):
sql>DROP DATABASE moodle;
- A l'exemple anterior, substituïu la paraula 'moodle' pel nom de la base de dades moodle creada en el moment de la instal·lació.
- Esborreu el directori moodledata. Si algun usuari, o vosaltres mateixos, heu carregat materials en aquest directori, feu-ne una còpia abans d'esborrar el directori.
- Esborreu el directori moodle. Aquesta acció esborrarà tots els fitxers d'scripts PHP