Moodle
"Moodle" to darmowa platforma edukacyjna napisana w PHP. Umożliwia przeprowadzanie kursów oraz szkoleń za pomocą przeglądarki.
Wstępna konfiguracja
Przed instalacją Moodle należy:
- Utworzyć stronę WWW bez dokonywania edycji opcji w Zaawansowane ustawienia. Można utworzyć stronę również jako subdomenę.
- Jeżeli dodaliśmy stronę w nowej domenie (która nie była podpięta do MyDevil) to wskazać u rejestratora domeny serwery dns: dns1.mydevil.net oraz dns2.mydevil.net.
- Utworzyć bazę danych MySQL wraz z użytkownikiem bazy. Podczas tworzenia bazy należy kliknąć w "Zaawansowane ustawienia" i zmienić "Metoda porównywania znaków" na utf8mb4_general_ci.
- Zalecane jest dodanie certyfikatu SSL dla strony, można u nas wygenerować darmowy certyfikat Let's Encrypt. Po dodaniu certyfikatu należy w panelu przejść do "Strony WWW" ➡ "Szczegóły" (przy wybranej stronie) ➡ włączyć "Wymuś SSL".
- Zalogować się na konto poprzez SSH.
Instalacja
W oknie klienta SSH należy:
Przejść do ~/domains/domena/
gdzie domena
to nazwa naszej domeny/subdomeny na której będzie instalowany Moodle:
cd ~/domains/domena/
Pobrać archiwum instalacyjne Moodle:
fetch https://download.moodle.org/stable34/moodle-latest-34.tgz
Usunąć katalogpublic_html
, wypakować archiwum, zmienić nazwę rozpakowanego katalogu, usunąć zbędne archiwum po rozpakowaniu, utworzyć katalog moodledata
:
rm -R public_html && tar -zxf moodle-latest-34.tgz && mv moodle public_html && rm moodle-latest-34.tgz && mkdir moodledata
Wskazać katalog moodledata w open_basedir. W miejscu domena
należy podać nazwę domeny/subdomeny na której instalujemy Moodle:
devil www options domena php_openbasedir $PWD
Zmienić wersję PHP dla strony na 7.2:
echo "AddType application/x-httpd-php72 .php" > .htaccess
Przechodzimy w przeglądarce internetowej na adres strony na której instalujemy Moodle. Zatwierdzamy domyślne ustawienia proponowane przez instalator aż do pytania o dane do bazy danych. W polu na "Host bazy danych" wskazujemy adres serwera MySQL (podany w mailu z danymi do usługi), wypełniamy pola "Nazwa bazy danych", "Użytkownik bazy danych", "Hasło do bazy danych" wcześniej utworzonej bazy danych. Resztę pól dotyczących MySQL nie zmieniamy.
Cron
W celu prawidłowego działania Moodle wymagane jest utworzenie zadania cron uruchamianego cyklicznie co minutę. Aby utworzyć takie zadanie należy wykonać polecenie:
echo "* * * * * /usr/local/bin/php72 ${PWD}/public_html/admin/cli/cron.php >/dev/null" | crontab -