Moodle installeren
  • 12 Apr 2023
  • 6 Minuten te lezen

Moodle installeren


Article Summary

Een omgeving kiezen

Informatie over de ondersteunde omgeving kan altijd gevonden worden in code in het readme.md-bestand. Het is ook te vinden in de documentatie over systeemserververeisten.

We raden ten zeerste aan dat alle productiesites waar mogelijk onze aanbevolen omgevingen volgen.

Productiesites moeten vanaf nul worden geïnstalleerd in plaats van te worden gekloond vanuit een databaseback-up van een andere site.
Je kunt meer lezen in onze beleidsdocumenten.

Bereid je omgeving voor

Besturingssysteem

Als je van plan bent Totara in meerdere talen te gebruiken, moet je ervoor zorgen dat de server correct is geconfigureerd met de juiste plaatsen. Dit is belangrijk om ervoor te zorgen dat datums, cijfers en valutagegevens correct worden weergegeven voor de geselecteerde taal van de gebruiker. Zie de documentatie voor ontwikkelaars voor meer informatie over serverlocaties.

Zorg ervoor dat je server goed beveiligd is voor een productieomgeving. Raadpleeg de provider van je besturingssysteem voor informatie over hoe je dit het beste kunt bereiken.

Databank

Totara ondersteunt een aantal verschillende databases. Het selecteren van een databank is een essentiële stap bij het opzetten van je Totara-installatie. We kunnen je niet vertellen welke je moet kiezen, noch welke beter is dan de rest. Hoe je je databank wil gebruiken en schalen, en je kennis ervan zal een grotere impact hebben dan de meeste andere factoren.

Als je niet zeker weet welke je moet kiezen, raden we PostgreSQL aan, omdat het standaard goede prestaties levert zonder dat tuning nodig is.

MySQL

Als je MySQL wilt gebruiken, raden we je aan om MySQL 8 of hoger te gebruiken, vanwege de verbeterde ondersteuning voor meertalige inhoud in Totara. 

We raden je ten zeerste aan om een hoofdlettergevoelige, accentgevoelige collatie te gebruiken (die MySQL 5.7 niet ondersteunt). We raden ook een 4-byte-compatibele tekenset (utf8mb4) aan om volledige ondersteuning te garanderen voor tekens zoals emoji's.

MySQL moet het Barracuda-bestandsformaat gebruiken. Om je databank aan te maken:

CREATE DATABASE {dbname} DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs;

Voor de veiligheid raden we je aan om een speciale databasegebruiker te gebruiken die alleen toegang heeft tot de Totara-database.

MariaDB

Er is geen hoofdlettergevoelige, accentgevoelige collatie beschikbaar voor MariaDB. Als dit waarschijnlijk een probleem voor je is, raden we je aan om MySQL 8 of hoger te overwegen.

MySQL moet het Barracuda-bestandsformaat gebruiken. Om je databank aan te maken:

CREATE DATABASE {dbname} DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

Voor de veiligheid raden we je aan om een speciale databasegebruiker te gebruiken die alleen toegang heeft tot de Totara-database.

PostgreSQL

Om je databank aan te maken:

createdb -E utf8 {dbname}

Voor de veiligheid raden we je aan om een speciale databasegebruiker te gebruiken die alleen toegang heeft tot de Totara-database.

Als je PostgreSQL 14 of hoger gebruikt, moet de enable_memoize instelling zijn uitgeschakeld.

MSSQL

Als je Totara installeert als sysadmin, dan moet je databasegebruiker het recht hebben om de serverinstellingen te wijzigen:

ALTER SETTINGS(SERVER)

Zoeken in volledige tekst moet ingeschakeld zijn; zie Zoeken in volledige tekst in MSSQL Server [LINK]. 

Om veiligheidsredenen raden we je aan om een speciale databasegebruiker te gebruiken die alleen toegang heeft tot de Totara-database. Je kunt Moodle ook installeren als een niet-sysadmin gebruiker met de volgende SQL:

-- First create a new user, change username and password to match your requirements

CREATE LOGIN testuser

    WITH PASSWORD = 'TestUser1';

GO

 

-- Now make sure this user can install the site, ALTER SETTINGS permissions is needed for this

USE master;

 

GRANT ALTER SETTINGS TO testuser;

 

-- For the database (substitute with the database name of your choice)

-- create a login for the user and make sure he has the permissions needed

USE totara_13;

 

CREATE USER testuser FOR LOGIN testuser;

 

-- Make sure the user can create tables, read and write data

ALTER ROLE db_ddladmin ADD MEMBER testuser;

ALTER ROLE db_datareader ADD MEMBER testuser;

ALTER ROLE db_datawriter ADD MEMBER testuser;

 

-- Create a custom role

CREATE ROLE db_totara;

 

-- This is needed to view any definition created by Totara

GRANT VIEW DEFINITION TO db_totara;

 

ALTER ROLE db_totara ADD MEMBER testuser;

 

GO

Nadat Totara is geïnstalleerd, zorgt de volgende SQL ervoor dat Totara volledig kan worden gebruikt zonder sysadmin-rechten:

-- Take away the ALTER SETTINGS permission, it's not needed anymore

USE master;

 

REVOKE ALTER SETTINGS TO testuser;

 

USE totara_13;

 

-- Make sure the user role has access to Totara's custom stored procedures

GRANT EXECUTE ON dbo.GROUP_CONCAT_D TO db_totara;

GRANT EXECUTE ON dbo.GROUP_CONCAT_S TO db_totara;

GRANT EXECUTE ON dbo.GROUP_CONCAT_DS TO db_totara;

GRANT EXECUTE ON dbo.GROUP_CONCAT TO db_totara;

 

GO

Webserver

Totara is een webtoepassing en vertrouwt op een webserver om te werken. Totara wordt officieel ondersteund wanneer het wordt uitgevoerd via Apache, IIS en Nginx.

Totara broncode bevat een servermap. De webserver moet geconfigureerd worden om alleen deze map en de onderliggende server van deze server te bedienen.

De structuur van de codebasis is gewijzigd tussen Totara 12 en Totara 13. Het is belangrijk dat je webserver alleen de servermap gebruikt. Het is een beveiligingsprobleem als je webserver is geconfigureerd om de broncodemap op het hoogste niveau te bedienen, omdat die meer informatie blootlegt dan bedoeld.

Bij het configureren van de webserver raden we je aan om deze te verharden volgens de best practices voor de door jou gekozen webserver. Volgende punten kunnen dienen als een gids voor Totara best practice voor productiesites:

  • Mappenlijst uitschakelen
  • Schakel het serveren van de volgende mappen uit:
    • /server/**/testen/
    • /server/**/amd/
    • /server/**/templates/
    • /server/**/classes/
  • Schakel serveren van de volgende bestandstypen uit:
    • /server/*/.txt
    • /server/*/.md
    • /server/*/.xml
    • Alle bestanden beginnen met "."
  • Zorg ervoor dat fouten naar een bekende logbestandslocatie geschreven worden. Als je problemen ondervindt en hulp zoekt, zullen ze je vaak vragen om de foutenlogboeken van de webserver te controleren.

Als je Apache + mod_php, CGI of PHP-FPM gebruikt en van plan bent om de Totara Mobile-app te gebruiken, dan moet je de volgende richtlijn toevoegen aan je VirtualHost-onderdeel voor de site om Apache de authenticatieheaders die vereist zijn door de mobiele app correct te laten passeren:

SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1
Als je Apache + mod_php, CGI of PHP-FPM gebruikt, raden we je aan om de volgende richtlijnen toe te voegen aan je Apache VirtualHost-onderdeel om ervoor te zorgen dat deze headers behouden blijven:
SetEnvIf Content-Type "(.*)" HTTP_CONTENT_TYPE=$1
SetEnvIf Accept "(.*)" HTTP_ACCEPT=$1
Informatie over de vereiste PHP-omgeving kan gevonden worden op de server systeem vereisten pagina.

Gegevensmap

Totara vereist toegang tot een datamap waarin gebruikersdata, cachebestanden, tijdelijke bestanden, enz. bewaard moeten worden. Deze map moet leesbaar en beschrijfbaar zijn voor de webservergebruiker.

In een horizontaal geschaalde omgeving moeten alle webservers toegang hebben tot de datamap. Het moet door hen gedeeld worden.

Moodle installeren

De code ophalen

De Totara-code is beschikbaar voor Alliance Partners en kan worden gedownload met de onderstaande opdrachten.

Om toegang te krijgen tot de code, moet je je ssh public key aan onze git-server hebben toegevoegd. Voor eventuele hulp hierbij kun je een ticket indienen bij de helpdesk.

Voor de hoofd Totara-code:

git clone ssh://git@code.totaralms.com/totara-txp.git

Voor de Totara Mobile app-code:

git clone ssh://git@code.totaralms.com/totara-mobile.git

CLI-installatie

We raden ten zeerste aan om de installatie en upgrade te voltooien via de command line interface.

Deze opdracht moet worden uitgevoerd als de webgebruiker (in dit geval www-data):

sudo -u www-data php server/admin/cli/install_database.php --agree-license --adminpass=mypassword123

Er zijn een aantal andere optionele argumenten die kunnen worden verstrekt om de installatie na de installatie te minimaliseren:

--lang=CODE           Installation and default site language. Default is en.

--adminuser=USERNAME  Username for the admin account. Default is admin.

--adminemail=STRING   Email address for the totara admin account.

--fullname=STRING     Name of the site

--shortname=STRING    Name of the site

Zodra de CLI-installatie is voltooid, kun je naar de startpagina van de site gaan en inloggen met de beheerdersgegevens voor verdere installatie.

Webinstallatie

Webinstallatie kan worden uitgevoerd door te navigeren naar de wwwroot die is ingesteld in het config.php-bestand en de instructies op het scherm te volgen. 

Essentiële configuratie

Hieronder staat een voorbeeld van een minimaal config.php-bestand dat aanwezig moet zijn in de map op het hoogste niveau. Er is veel optionele configuratie die kan worden toegevoegd - zie het bestand config.example.php in de map op het hoogste niveau.

<?php

$CFG = new stdClass();

$CFG->wwwroot = 'http://mytotara.com';

$CFG->dirroot = '/var/www/totara/htdocs/server';

$CFG->dataroot = '/var/sitedata/totara';

$CFG->directorypermissions = 00777; // try 02777 on a server in Safe Mode

 

$CFG->dbhost = 'localhost';

$CFG->dbtype = 'pgsql';

$CFG->dbuser = 'dbuser';

$CFG->dbpass = 'dbpass';

$CFG->dbname = 'totaradb';

 

$CFG->prefix = 'ttr_';

 

$CFG->forceflavour = 'learn_engage';

De volgende opties zijn beschikbaar voor de Forceflavour config, afhankelijk van welke combinatie van producten de site zal gebruiken:

  • leren
  • inschakelen
  • uitvoeren
  • learn_perform
  • learn_engage
  • perform_engage
  • learn_perform_engage

Als je de smaken wil gebruiken, dan kun je hier meer informatie over vinden in onze Partnergids voor het gebruik van de smaken.

Volgende stappen

© Copyright 2024 Totara Learning Solutions. All rights reserved.


Was dit artikel nuttig?

Changing your password will log you out immediately. Use the new password to log back in.
First name must have atleast 2 characters. Numbers and special characters are not allowed.
Last name must have atleast 1 characters. Numbers and special characters are not allowed.
Enter a valid email
Enter a valid password
Your profile has been successfully updated.