Instalacja FAQ
PHP – czy jest zainstalowane, jeśli tak, jaka wersja?
Utwórz na swoim serwerze plik o nazwie info.php, zawierający poniższy tekst oraz otwórz go przez przeglądarkę www.
<?php phpinfo() ?>
Jeśli nie ukaże się strona informacyjna PHP, nie masz zainstalowanego PHP lub serwer nie jest skonfigurowany do używania go z plikami *.php. Przeszukaj dokumentację w poszukiwaniu pomocy w instalacji. Jeśli natomiast ukaże się strona informacyjna PHP, jego wersję będziesz mógł odczytać z odpowiedniego wiersza na samej górze strony. Zobacz stronę phpinfo aby dowiedzieć się więcej o rezultacie tej funkcji przy poprawnie skonfigurowanym serwerze.
Potrzebne informacje podczas szukania pomocy na forum
Gdy postujesz pytanie na forum Moodle, staraj się podawać jak najwięcej o twoim systemie oraz Moodle. Możesz użyć poniższego schematu podawania informacji:
- System operacyjny serwera?
- Nazwa przeglądarki WWW w której występuje problem?
- Wersja Moodle?
- Moodle było aktualizowane czy instalowane na świeżo?
- Załącz config.php jeśli okaże się to konieczne.
- Załącz wynik phpinfo() jeśli okaże się to konieczne.
Jeśli nie możesz załączyć wyniku phpinfo() spróbuj podać poniższe informacje.
- Serwer WWW (np. Apache/IIS) w wersji:
- Serwer Bazy danych (np. MySQL, PostgreSQL) w wersji:
- Wersja PHP:
Jeśli masz Moodle postawione na serwerze firmy hostingowej, skontaktuj się z tamtejszą administracją i zdobądź te informacje.
- UWAGA!: Upewnij się, że podając informacje na forum Moodle nie podasz przypadkiem haseł dostępu do serwera lub bazy danych!
Gdzie są zapisane informacje konfiguracyjne Moodle?
Ustawienia konfiguracyjne Moodle są zapisywane w pliku config.php w głównym folderze twojej instalacji Moodle. Plik ten jest tworzony podczas instalacji. Jeśli występuje jakiś problem i skrypt instalacyjny nie jest w stanie utworzyć tego pliku automatycznie, spróbuj utworzyć go ręcznie, postępując zgodnie z tymi instrukcjami: [[Configuration file]. Pamiętaj, że ręczne modyfikowanie tego pliku nie jest zalecane i może doprowadzić do powstawania pustych stron... Zwłaszcza, jeśli pojawią się jakieś dodatkowe znaki/linie przed znakiem „?>”
Sprawdzanie „stanu zdrowia” twojego Moodle
Moodle zawiera skrypt odpowiedzialny za wykrywanie częstych problemów serwera WWW, php, lub konfiguracji. Dobrym pomysłem jest włączenie tego skryptu jeśli doświadczasz problemów z Moodle tuż po jego instalacji. Skrypt ten włącza się wchodząc na stronę podobną do poniższej:
http://www.mojmoodle.pl/moodle/admin/health.php
Zmień oczywiście www.mojmoodle.pl na nazwę twojej domeny, oraz po niej podaj ścieżkę do twojej instalacji Moodle (w powyższym przykładzie „moodle”)
Pobieranie starszych wersji Moodle
- Standardowe Paczki: Jeśli twój serwer nie spełnia wymagań Moodle dla obecnej wersji, możesz pobrać jedną z poprzednich wersji korzystając z zet, lynx lub culr wpisując w nich ten URL:
http://download.moodle.org/stable[NUMER_WERSJI]
- Na przykład: aby pobrać Moodle w wersji 1.5 użyj http://download.moodle.org/stable15. Zobaczysz listę plików, pobierz interesujący cię plik. Jeśli chcesz pobrać najświeższy plik przewiń stronę na sam dół w poszukiwaniu pliku "moodle-latest" lub użyj poniższych linków:
http://download.moodle.org/stable[NUMER_WERSJI]/moodle-latest-[NUMER_WERSJI].zip http://download.moodle.org/stable[NUMER_WERSJI]/moodle-latest-[NUMER_WERSJI].tgz
- Zmiany dokonane w konkretnej wersji w ostatnim miesiącu są wypisane w pliku "CHANGES" w folderze danej wersji Moodle. Pliki pobrane tym sposobem nie są dedykowane ani pod Windowsa ani pod Maci, zatem musisz mieć działający skonfigurowany serwer WWW aby korzystać z tych plików, jako że zawierają same pliki skryptu Moodle.
- Paczki pod Windows: Aby pobrać starsze wydania Moodle dedykowane pod Windows użyj tego linku: http://download.moodle.org/windows/MoodleWindowsInstaller-latest-[NUMER_WERSJI].zip
- Paczki pod Maci: Aby pobrać poprzednie wydania Moodle dedykowane pod Mac użyj poniższych linków, wybierając wersję Intel lub PPC, w zależności od posiadanego sprzętu:
http://download.moodle.org/macosx/Moodle4Mac-Intel-[NUMER_WERSJI].dmg http://download.moodle.org/macosx/Moodle4Mac-PPC-[NUMER_WERSJI].dmg
- Używając CVS: Możesz również użyć CVS do pobrania starszych wersji Moodle. Więcej informacji o tym jak to zrobić znajdziesz w tekście: CVS dla administratorów.
Jak włączyć i sprawdzać logi błędów PHP?
PHP może zgłaszać błędy na wiele różnych sposobów. Sposób ich zgłaszania można zmodyfikować w pliku php.ini lub przy użyciu komendy ini_set.
- Używając pliku php.ini: Ustawienia logowania są zawarte w pliku php.ini umieszczonym na serwerze. Jeśli nie wiesz gdzie się on znajduje użyj phpinfo() (opisane powyżej) i odczytaj z niego wartość dla wiersza Configuration File (php.ini) Path
- Jak już znajdziesz plik php.ini otwórz go w dowolnym edytorze tekstu. Znajdź sekcję Error handling and logging. Upewnij się że ustawione są następujące wartości (oraz linie te nie są zakomentowane): display_errors = On, display_startup_errors = On i log_errors = On. Sprawdź wartość dla error_log – jest to adres pliku do którego logowane będą błędy. Jeśli linia ta jest zakomentowana, komunikaty o błędach nie będą zapisywane do pliku. Pamiętaj, że zmiany dokonane w pliku php.ini zostaną użyte dopiero po tym jak restartujesz serwer (reboot’ujesz go).
- Używając komend set_ini: Jeśli używasz Moodle 1.7 lub nowszego, poprzednie kroki nie są wystarczające do dokonania pożądanych zmian. W tych wersjach parametry logowania są zależne od pewnych ustawień administracyjnych które ustalasz w sekcji debugowania. Problem polega na tym że jeśli nie możesz wejść na strony administracyjne nie możesz ustalić opcji debugowania. Zatem jedynym sposobem na zmienienie ich jest zmodyfikowanie pliku config.php dodając poniższe linie tuż przed OSTATNIĄ linią zawierającą „?>”:
ini_set ('display_errors', 'on'); ini_set ('log_errors', 'on'); ini_set ('display_startup_errors', 'on'); ini_set ('error_reporting', E_ALL);
- Pozwoli to na włączenie tych opcji nawet jeśli w sekcji debugowania zostały ustalone na inne.
- Ważne: Pamiętaj aby wkleić ten kod w liniach bezpośrednio przed ostatnią linią pliku config.php
Każdy tekst zawierający znak ‘ lub ” powoduje błędy lub zostaje pokazany poprzedzony slashem
Problemy tego typu powodowane są przez nie poprawne ustawienie „magic quotes”. Moodle wymaga następujących ustawień w pliku php.ini (są to ustawienia domyślne):
magic_quotes_gpc = On magic_quotes_runtime = Off
Przeczytaj Instalacja Moodle aby uzyskać więcej informacji.
Jeśli używasz Moodle na Debilnie możliwe jest że masz zainstalowaną nie poprawną wersję PHP. Spójrz zatem na następujący link, aby sprawdzić czy zgadza się z twoją sytuacją: bug report .
Kopie maili nie są wysyłane z mojego forum
Musisz ustawić poprawnie Crona jeśli chcesz by Moodle wysyłało automatyczne maile Ten sam proces wykonuje również kilka zadań „sprzątających” w stylu usuwania nie potwierdzonych konu użytkowników itp.
Musisz zatem ustalić aby Cron regularnie wywoływał plik: http://yoursite/admin/cron.php
. Przeczytaj informacje dot. Crona w poszukiwaniu większej ilości informacji.
Wskazówka: Użyj domyślnych ustawień, powinny być wystarczające dla stanowczej większości użytkowników Moodle. Wskazówka: Upewnij się że allowuseremailcharset w Administration > Configuration > Variables > Mail jest ustawione na „No”. Ustawienie tej opcji na „Yes” może doprowadzić do komplikacji w pewnych wersjach Moodle.
Błąd: database connection failed
Jeśli otrzymujesz bład tego typu lub podobny, spróbuj poniższych rozwiązań:
- Twój ‘’’serwer bazy danych’’’ nie jest włączony, lub w ogóle nie jest zainstalowany. Aby sprawdzić czy serwer bazy danych działa, wpisz poniższą komendę do linii poleceń:
$telnet adres_serwera_bazy 3306
- Powinieneś dostać odpowiedź serwera zawierającą jego wersję itp.
- Jeśli próbujesz mieć uruchomione dwie instancje Moodle na jednym serwerze lecz różnych portach, użyj adresu IP zamiast adresu serwera w ustawieniu $CFG->dbhost (np. $CFG->dbhost = 127.0.0.1:3308).
- Nie masz zainstalowanych dodatków PHP mysql lub postgresql Odwołaj się do poradnika instalacji aby je zdobyć.
- Nie stworzyłeś bazy danych z odpowiednimi uprawnieniami dla Moodle.
- Ustawienia bazy danych Moodle są nie poprawne. Nazwa bazy danych, nazwa użytkownika lub hasło są nie poprawne w twoim pliku ‘’config.php’’. Aby odszukać poprawne dane użyj phpMyAdmin do ustalenia na nowo tych danych.
- Upewnij się że nie ma apostrofów (‘)Check that there are no apostrophes or non-alphabetic letters in your MySQL username or password.
- Używasz MySQL w wersji 4.1 ale dodatek PHPMySQL masz w wersji pre4.1. (sprawdź to użuwając phpinfo) W takim przypadku standardowy algorytm hashowania haseł jest nie zgodny z tym dostępnym w MySQL 4.x.x, użyj następujących komend MySQL aby usunąć problem:
mysql>SET PASSWORD FOR 'root'@'localhost' = OLD_PASSWORD('password'); mysql>SET PASSWORD FOR 'moodleuser'@'localhost' = OLD_PASSWORD('password');
- Poza tym zalecane jest wyposażenie się w nowszą wersję PHPMySQL. Przeczytaj ten dokument w poszukiwaniu dalszych informacji.
- Używasz Fedora Core 3 lub innego systemu Linux z zainstalowanym ‘’’SELinuxem’’’. Wejdź na poniższy link aby zobaczyć jak wyłączyć SELinuxa: http://fedora.redhat.com/projects/selinux/ Jeśli nie chcesz wyłączać SELinuxa musisz pozwolić w nim procesowi httpd na tworzenie połączeń sieciowych:
setsebool httpd_can_network_connect true
- Użytkownicy Mac OSX – jeśli używacie MySQL na Mac OSX spróbujcie zmienić ustawienie $CFG->dbhost z 'localhost' na '127.0.0.1'
Zobacz również: Strona MySQL o częstych błędach gdzie są wypisane częste problemy tego typu, oraz przykładowe ich rozwiązania.
Nie mogę się zalogować, utknąłem na ekranie logowania
Najczęstszym powodem tego jest to, że masz zainstalowanego firewalla który ukrywa informacje ‘’referrer’’ z nagłówka http. Tutaj znajduje się instrukcja naprawy tego problemu w produktach Norton firewall.
Administrator serwera może również usunąć ten problem poprzez ustawienie zmiennej secureforms na 'No', znajduje się ona w Administration >> Configuration >> Variables.
Innym możliwym powodem problemu jest nie poprawne ustawienie sesji na serwerze, aby sprawdzić czy działają poprawnie wejdź na: http://twojastronamoodle.pl/moodle/lib/session-test.php.
Nie mogę się zalogować i otrzymuję komunikat "Please verify that the current setting of session.save_path is correct"
Ten błąd pojawia się gdy PHP ma problemy z zapisywaniem plików sesji. Mogą się również pojawić poniższe błędy, oznaczające ten sam problem:
Warning: Unknown: open(some-path/sessions/sess_acbf942a7399db3489ffa910e35d5242, O_RDWR) failed: Permission denied (13) in Unknown on line 0
Warning: Unknown(): open(some-path/sessions/sess_acbf942a7399db3489ffa910e35d5242, O_RDWR) failed: No space left on device (28) in Unknown on line 0
Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (some-path/sessions) in Unknown on line 0
Aby obejść ten problem możesz w config.php dodać:
$CFG->dbsessions = true;
Rozwiązanie to nie jest jednak za dobre jako że sesje bazodanowe mogą przeciążyć serwer bazy danych i nie powinno być stosowane na stałe, a raczej jako tymczasowe ustawienie na czas poprawy problemu poniższym sposobem:
- Sprawdź uprawnienia dostępu. Plik session.save_path powinien być dostępny przez użytkownika Apache, użej tej komendy aby to sprawdzić:
chown -R apache:apache some-path/sessions
- Powyższy przykład zakłada, że użytkownikiem apache’a jest ‘apache’, może to również być ‘nobody’.
- Sprawdź uprawnienia do folderu w którym PHP stara się zapisywać dane (session.save_path = jakas_sciezka/sessions). Ustaw uprawnienia do tego folderu na 0777:
chmod -R 0777 jakas_sciezka/sessions
- Jeśli rozwiązuje to problem, zmniejsz uprawnienia do niższych (zaleca się 0700).
Patrz również: Problemy z sesjami mogą być specyficzne dla danego środowiska na jakim działa serwer, po więcej informacji poczytaj: this forum discussion – poradnik o problemach z sesjami na kontach lycos.
Jestem zalogowany ale link ‘login’ się nie zmienia. Mogę się dowolnie poruszać po stronie
Upewnij się że URL w twoim ustawieniu $CFG->wwwroot
(w config.php) jest dokładnie taki sam jak URL z jakiego korzystasz przy przeglądaniu strony.
Pojawia mi się błąd: „A server error that affects your login session was detected.”
Przeczytaj tą dyskusję (po angielsku): A server error that affects your login session was detected. Please login again or restart your browser..
Pojawia mi się błąd: Failed opening required '/web/moodle/lib/setup.php'
W pliku config.php ustawienie które używasz dla zmiennej ‘’dirroot’’ musi być pełną ścieżką do pliku, względem struktury plików serwera. Możliwe że omyłkowo podałeś jedynie ścieżkę swojego folderu domowego.
Moje strony pokazują błędy krytyczne: Parse error, call to undefined function: get_string()
Jeśli widzisz błędy tego typu:
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
Wtedy prawdopodobnie ominąłeś/zgubiłeś znak średnika w linii poprzedzającej tą w której pojawił się błąd w pliku config.php.
Inną możliwością jest ta, że modyfikowałeś plik config.php przy użyciu Worda lub innej nie „czystej” aplikacji do obróbki tekstu. Do modyfikowania tego typu plików używaj notatnika, lub np. ‘’Syn Text Editor’’a.
Inną rzeczą którą powinieneś sprawdzić jeśli używasz cudze skrypty to to czy używają one skróconych znaczników PHP (<? ?>), jeśli tak koniecznie zmień je na prawidłowe (<?php ?>). Skrócone tagi są złe z wielu powodów, poinformuj autora kodu aby używał prawidłowych znaczników zamiast skróconych, oszczędzi sobie i innym kłopotów w przyszłości. Jeśli jednak zmiana znaczników nie wchodzi w grę, z jakichkolwiek powodów, zawsze możesz dodać poniższą linię do pliku php.ini:
short_open_tag = On
Jeśli znajdziesz skrócone tagi w samym Moodle, zgłoś to nam proszę jako błąd.
Otrzymuję błąd: Serious Error! Could not set up the site!
Przeczytaj następującą dyskusję z forum Moodle (po angielsku): Serious Error! Could not set up the site!.
Wysyłam pliki na serwer, ale gdy próbuję je pobrać otrzymuję "404 File not found"
Na przykład: „404 Not Found: The requested URL /moodle/file.php/2/myfile.jpg was not found on this server.”
Twój serwer WWW musi zostać odpowiednio skonfigurowany aby zezwalać na przekazywanie części ścieżki URL bezpośrednio do skryptu. Jest to zazwyczaj włączone w Apache 1 lecz w wersji 2 jest do domyślnie wyłączone. Aby to włączyć dodaj poniższą linię do pliku httpd.conf lub .htaccess w folderze Moodle:
AcceptPathInfo on
‘’’Uwaga’’’: To zadziała TYLKO w apache 2.x
Jeśli nie używasz apache a mimo wszystko masz ten problem (mało prawdopodobne) przełącz Moodle tak aby używało innej metody zdobywania adresu plików. Zmniejszy to trochę wydajność skryptu...
Aby użyć tej alternatywnej metody musisz zmienić zmienną slasharguments. Dla Moodle starszego od wersji 1.6 jest to umieszczone w Administration >> Configuration >> Variables. W innym przypadku opcja ta znajduje się w Administration >> Server >> HTTP. Teraz wszystko powinno już działać.
Gdy wchodzę na stronę admina zostaję proszony o opróżnienie dirroot’a
Jeśli widzisz błędy tego typu:
Please fix your settings in config.php: You have: $CFG->dirroot = "/home/users/fred/public_html/moodle"; but it should be: $CFG->dirroot = "";
Wtedy natknąłeś się na Bug (błąd) który występuje na niektórych serwerach. Problemem jest system sprawdzania błędów. Aby naprawić problem otwórz plik ‘’admin/index.php’’ i w linii 66 znajdź:
if ($dirroot != $CFG->dirroot) {
i zmień na:
if (!empty($dirroot) and $dirroot != $CFG->dirroot) {
Gdy dodaję zasób, otrzymuję komunikaty błędów
Zakładając że pracujesz na apache, bardzo prawdopodobne jest że wartość zmiennej $CFG->wwwroot
w config.php jest inna niż twój realny URL z którego korzystasz otwierając stronę. Spróbuj również wyłączenie zmiennej secureforms w Administration >> Configuration >> Variables.
Dlaczego wszystkie moje strony są puste?
Sprawdź zmienną dirroot w config.php. Musisz używać pełnej ścieżki, struktury plików twojego serwera, na przykład:
$CFG->dirroot = "d:\inetpub\sites\www.yoursite.com\web\moodle";
Innym powodem może być to że PHP nie zostało skonfigurowane do obsługi MySQL. To się często zdarza na dystrybucjach RedHat oraz OpenBSD. W takim przypadku błąd jest generowany, ale jako że wyłączone jest pokazywanie ich, może się użytkownikowi wydawać że widzi on pustą stronę i nic się nie dzieje... Aby włączyć raportowanie błędów przez PHP dodaj poniższe linie w php.ini:
display_errors = On display_startup_errors = On
Aby sprawdzić czy twoim problemem jest obsługa MySQL użyj phpinfo (opisane powyżej). Dokładnie przeszukaj wynik tej funkcji i sprawdź której paczki ci brakuje – będziesz musiał ją doinstalować.
Dlaczego jedna konkretna strona jest pusta/nie pełna?
- Sprawdź log serwera!!
- Jeśli jakaś konkretna strona jest pusta bądź nie pełna (nie pokazuje stopki), zanim rozpoczniesz jakiekolwiek działania przeczytaj logi serwera (jak je włączyć i odnaleźć zostało opisane powyżej). Sprawdź najnowszy błąd w logu, zapisany bezpośrednio po tym jak wchodzisz na tą stronę – może to ci bezpośrednio pozwolić na naprawienie usterki, lub bardzo ułatwić jej diagnozę.
- Jeśli ‘’’aktualizujesz Moodle do nowej wersji’’’, sprawdź czy nie masz zainstalowanych jakiś nie standardowych dodatków. Usuń je zanim zaczniesz aktualizować Moodle.
- Jeśli nie widzisz żadnych bloków, włącz edytowanie i usuń wszystkie bloki jakie ręcznie dodawałeś, i przeładuj stronę.
Instalacja zawiesza się podczas ustawiania tabel w bazie danych
- Może się zdarzyć że instalacja zawiesi się podczas ustawiania tabel w bazie danych. Możliwe że będzie pokazany ‘Scroll to continue’ lecz sam przycisk continue nie pojawia się... W takim przypadku prawdopodobnie baza danych ma ustawiony limit zapytań...
- Jeśli instalujesz Moodle na webhoście dodanie poniższej linii do pliku ‘’.htaccess’’:
AddType x-mapp-php5 .php
- Możesz również sprawdzić czy zmieniałeś ręcznie jakąś część kodu Moodle. Sprawdź na ostatnią poprawnie ustawioną tabelę, a potem na blok, mod, lub inny kod do którego się ta tabela odwołuje. Przeszukaj te pliki w poszukiwaniu ręcznie wprowadzonych zmian, jeśli rzeczywiście takowe zawierają, podmień ten plik na oryginalny, rozpocznij instalację od nowa, a następnie przywróć na gotowej już instalacji zmodyfikowany plik.
- Możliwe jest również że na serwerze jest limit pamięci ustalony za nisko. Zmodyfikuj swój php.ini aby spełniał wymogi najnowszej odsłony Moodle. Przykładowo: Moodle 1.8 potrzebuje co najmniej 40MB lub więcej pamięci do poprawnego i sprawnego działania.
- Można ten problem obejść instalując Moodle na localhoście (u ciebie na komputerze) a następnie wysłać fały folder Moodle oraz bazę danych na serwer WWW. Po uploadzie plików i bazy będziesz musiał zmodyfikować config.php aby pasował do serwera na którym strona ma pracować. (Gotowe do instalacji, zautomatyzowane paczki znajdziesz na: [1])
- Aby unikać tego typu problemów w czasie aktualizacji aktualizuj z wersji na wersję. Czyli np. z 1.5 do 1.6 i dopiero do 1.7, zamiast bezpośrednio z 1.5 do 1.7.
Uwaga: Jeśli aktualizujesz istniejącą bazę danych, bądź cierpliwy, to może potrwać naprawdę bardzo długo.
Czemu nie mogę wysłać nowego obrazka do mojego profilu?
Jeśli nie masz żadnych opcji do wysyłania zdjęć w swoim profilu, powodem prawdopodobnie jest to że serwer nie posiada włączonego rozszerzenia GD. Pozwala ono na manipulowanie grafiką na serwerze i jest wymagane do poprawnego działania obrazków w Moodle.
1. Upewnij się, że twoja instalacja PHP zawiera GD. Możesz to sprawdzić wchodząc do: Administration >> Configuration >> Variables i szukając zmiennej ‘’gdversion’’. To ustawienie wybierane jest automatycznie za każdym razem gdy odwiedzasz tą stronę. Poda ono wersję GD, jeśli będzie to 1 lub 2 – wszystko jest w porządku, jeśli nie, musisz doinstalować GD do PHP.
2. Jeśli Moodle uważa że nie posiadasz GD, będziesz musiał je zainstalować.
- Na Uniksie będziesz musiał przekompilować PHP z następującymi parametrami:
./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
- Na Windowsie jest to zazwyczaj kwestia „włączenia” tego rozszerzenia w PHP przez edytowanie pliku php.ini. Aby to zrobić usuń średnik przed php_gd2.dll. Sprawdź również czy ten plik rzeczywiście istnieje w twoim systemie plików.
3. Pamiętaj o zrestartowaniu serwera (jeśli możliwe) i odwiedzić stronę konfiguracyjną Moodle po dokonaniu zmian aby upewnić się że wykrywa ono poprawną wersję GD.
Patrz również: Dyskusja na (angielskim!) forum Moodle: Profile pictures
Wciąż wyskakują mi błędy typu: "headers already sent"
Jeśli widzisz błędy tego typu:
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
Masz gdzieś przed <?php lub po ?> puste znaki w pliku config.php. Aby je usunąć otwórz ten plik w dowolnym notatniku i ręcznie pousuwaj te znaki.
Dlaczego Moodle pokazuje nie poprawną datę i czas?
Każdy język wymaga specyficznego kodu języka nazywany ‘’’locale’’’ aby daty były wyświetlane poprawnie. Paczki językowe zawierają te zmienne jednak na Windows nie zawsze działają...
Możesz znaleźć odpowiednie dla Windows (tylko dla windows) stałe na tych stronach (angielskich): Language codes i Country/region
Te nowe kody muszą zostać wprowadzone w Administration >> Configuration >> Variables skąd będą pobierane (i będą nadpisywać ustawienia z skórek).
Otrzymuję błąd: "500:Internal Server Error"
Błąd ten pojawia się jeśli masz błąd składni w swoim pliku.htaccess lub httpd.conf. Zobaczysz ten błąd również jeśli serwer nie obsługuje plików .htaccess, zwłaszcza jeśli uruchomiony jest PHPsuexec. Możliwe jest również, w twoim pliku .htaccess masz zapisaną dyrektywę nie obsługiwaną przez twoją wersję serwera.
Jak odinstalować Moodle?
Deinstalacja Moodle zainstalowanego z paczki: Jeśli pobrałeś paczkę Moodle pod Windows. Jego deinstalacja przebiega tak samo jak instalacja normalnego oprogramowania. Idź do Panel sterowania -> Dodaj/Usuń programy, i wybierz odpowiednią paczkę którą chcesz odinstalować.
Deinstalacja Moodle na webhoście: Jeśli instalowałeś Moodle ręcznie, lub instalowałeś je na webhoście postępuj według tych instrukcji:
- Usuń bazę danych Moodle, korzystając z odpowiedniego polecenia SQL (lub narzędzia, np. PHPMyAdmin), na przykład:
DROP DATABASE moodle;
- Zastąp słowo moodle z powyższego przykładu nazwą twojej bazy danych, którą utworzyłeś podczas instalacji Moodle.
- Usuń folder „moodledata”. Jeśli wysyłałeś jakieś istotne pliki na serwer, zamin usuniesz ten folder zrób sobie jego kopię zapasową.
- Usuń folder „moodle”.
Jak zaktualizować Moodle? Po prostu nadpisać pliki?
NIE nadpisuj po prostu plików Moodle! Może to doprowadzić to dziwnych błędów... Powinieneś za każdym razem przystępując do aktualizacji przeczytać odpowiedni plik readme.txt lub inny załączony do plików aktualizacji, aby uzyskać instrukcje odnośnie aktualizacji.
Przeposzczeni Moodle na inny serwer
Przeniesienie Moodle z jednego na inny serwer tak naprawdę oznacza przeniesienie wszystkich danych z bazy danych oraz plików Moodle na nowy serwer, a następnie ponowne skonfigurowanie Moodle aby działał z nowym serwerem. Przed migracją powinieneś zmodyfikować wszystkie stałe linki tak aby odnosiły się do nowego poprawnego adresu strony. Możesz tego dokonać przy użyciu skryptu admin/replace.php, lub dowolnego edytora tekstu z dostępną opcją „znajdź wszystkie/zamień wszystkie”. Po migracji będziesz musiał zmodyfikować zmienną $CFG->wwwroot w pliku config.php.
Błąd krytyczny, limit pamięci przekroczony. Jak zwiększyć limit dostępnej pamięci?
Może się zdarzyć, że skrypt będzie potrzebował więcej pamięci niż serwer mu przydziela. Typowy taki błąd będzie wyglądał mniej więcej tak: Fatal error: Allowed memory size of 67108864 bytes exhausted
(tried to allocate xx bytes) in /var/www/moodle/yyyy.php
Ten błąd oznacza że memory_limit jest ustawiony na za niską wartość aby dany skrypt mógł poprawnie operować. Memory_limit jest wartością "allowed memory size" z powyższego przykładu, i wynosi - 64MB (67108864 bajtów / 1024 = 65536 KB. 65536 KB / 1024 = 64 MB). Będziesz musiał zwiększyć php memory_limit do wielkości kiedy ten komunikat przestanie się pojawiać. Można to zrobić na dwa sposoby:
- Na serwerze WWW dodaj następującą linię do .htaccess (lub utwórz go w głównym folderze Moodle jeśli jeszcze nie istnieje):
php_value memory_limit <value>M Example: php_value memory_limit 80M
- Jeśli masz własny serwer z dostępem do Stella wyedytuj plik php.ini zmieniając następujące linie:
memory_limit <value>M Example: memory_limit 80M
Pamiętaj że musisz restartować serwer aby te zmiany zostały zachowane, jeśli zmieniałeś cokolwiek w php.ini. Jeszcze innym wyjściem jest całkowite usunięcie blokady pamięciowej, możesz tego dokonać ustawiając memory_limit na 0 przy użyciu „memory_limit 0”.
Dlaczego moja instalacja Moodle poprawie wyświetla się na moim komputerze ale na innych obrazki itp. nie są wyświetlane poprawnie?
W instrukcji instalacji jedną z zalecanych nazw hosta jest ‘localhost’. Ustawienie to jest w porządku jeśli chcesz sam poeksperymentować z moodle, jednak aby udostępniać Moodle innym komputerom w sieci musisz zmienić to ustawienie:
- Na lokalne testowanie zostaw 'localhost' jako wartość $CFG->wwwroot zapisaną w config.php
- Jeśli chcesz testować Moodle postawione na twoim komputerze z innych maszyn w tej samej sieci LAN (domowej). Będziesz musiał podać swój adres IP, na przykład „192.168.0.15/Moodle” lub nazwę twojego komputera „komputerek/Moodle” Zależnie od konfiguracji twojej sieci, lepszym rozwiązaniem może się okazać podawanie nazwy twojego hosta zamiast jego IP, jako że IP może być ci przydzielane dynamicznie.
- Jeśli chcesz natomiast udostępniać Moodle wszystkim użytkownikom Internetu, będziesz musiał podać w miejscu tej zmiennej swój publiczny adres IP. Aby dowiedzieć się więcej na ten temat, poczytaj: masquerading.
Maksymalny rozmiar plików wysyłanych na serwer, jak zmienić?
Jest wiele miejsc gdzie możesz dokonać tej modyfikacji. Pierwszym miejscem jest blok administracyjny: Security -> Site Policies -> przeglądaj listę opcji w poszukiwaniu "Maximum Uploaded File Size". Jest to maksymalny rozmiar wysyłanych na serwer plików, wyedytuj go sobie wedle swoich potrzeb. Nauczyciele mogą ustalać to samo jednak tylko w obrębie dla swoich kursów.
Drugim miejscem gdzie możesz zmienić maksymalny rozmiar plików wysyłanych na serwer jest plik php.ini. Jeśli ustawisz tam pewną wartość, będzie ona nadpisywać każdą inną wartość wpisaną w innym miejscu. (Wskazówka: Pamiętaj że musisz restartować serwer po modyfikacji php.ini aby zmiany zostały wykonane).