- 12 Apr 2023
- 6 Minuten te lezen
Moodle installeren
- Bijgewerkt op 12 Apr 2023
- 6 Minuten te lezen
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.
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.
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
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.
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
SetEnvIf Content-Type "(.*)" HTTP_CONTENT_TYPE=$1
SetEnvIf Accept "(.*)" HTTP_ACCEPT=$1
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.
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.