Kako instalirati Moodle 3.3.x na CentOS 7

Moodle je platforma za učenje otvorenog koda ili sustav za upravljanje tečajevima (CMS) - besplatni softverski paket otvorenog koda osmišljen da pomogne edukatorima u stvaranju učinkovitih online tečajeva.

Ovaj vodič će pokriti proces instaliranja najnovijeg stabilnog izdanja Moodlea, Moodlea 3.3.2+, na poslužitelju CentOS 7.

Preduvjeti

  • Instanca poslužitelja CentOS 7 x64 s najmanje 2 GB RAM-a (preporučeno 4 GB ili više).
  • Korisnik sudoa .
  • EPEL yum repozitorij.

Korak 1: Ažurirajte sustav

Prijavite se na svoj poslužitelj putem SSH-a koristeći sudo korisnika za instalaciju epel, ažuriranje sustava i ponovno pokretanje kako biste primijenili ažuriranja.

sudo yum install epel-release -y
sudo yum update -y && sudo shutdown -r now

Korak 2: Instalirajte Apache 2.4.x

sudo yum install httpd -y

U proizvodnji biste trebali ukloniti unaprijed postavljenu stranicu dobrodošlice Apachea:

sudo sed -i 's/^/#&/g' /etc/httpd/conf.d/welcome.conf

Spriječite Apacheu da posjetiteljima prikazuje datoteke web direktorija:

sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/httpd/conf/httpd.conf

Pokrenite uslugu Apache i omogućite joj automatsko pokretanje pri pokretanju

sudo systemctl start httpd.service
sudo systemctl enable httpd.service

Korak 3: Instalirajte MariaDB 10.2.x

Moodle pohranjuje sve svoje podatke u MySQL bazu podataka. MariaDB je zamjena za MySQL i mi ćemo instalirati najnoviju stabilnu verziju, MariaDB 10.2.x.

3.1 Instalirajte i pokrenite MariaDB 10.2.x
curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash
sudo yum install MariaDB-server MariaDB-client -y
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service
3.2 Osigurajte instalaciju MariaDB-a
sudo /usr/bin/mysql_secure_installation

Odgovorite na pitanja kao u nastavku i svakako koristite snažnu MariaDB root lozinku umjesto uzorka prikazanog ispod:

  • Unesite trenutnu lozinku za root (unesite za nijednu): Samo pritisnite Entergumb
  • Postaviti root lozinku? [Da/n]:Y
  • Nova lozinka: your-root-password
  • Ponovno unesite novu lozinku: your-root-password
  • Ukloniti anonimne korisnike? [Da/n]:Y
  • Zabraniti root prijavu na daljinu? [Da/n]:Y
  • Ukloniti testnu bazu podataka i pristupiti njoj? [Da/n]:Y
  • Ponovno učitati tablice privilegija sada? [Da/n]:Y
3.3 Izradite MariaDB bazu podataka za Moodle

Prijavite se u MySQL ljusku kao root:

mysql -u root -p

Upišite MariaDB root lozinku koju ste ranije postavili kada se to od vas zatraži.

U MySQL ljusci stvorite bazu podataka moodle, korisnika moodleuserbaze podataka, lozinku korisnika baze podataka yourpasswordkako slijedi.

Napomena: Iz sigurnosnih razloga trebali biste zamijeniti yourpasswordgore spomenuti uzorak lozinke svojim vlastitim.

CREATE DATABASE moodle DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'moodleuser'@'localhost' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON moodle.* TO 'moodleuser'@'localhost' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;

Korak 4: Instalirajte PHP 7.1 i potrebna PHP 7.1 proširenja

PHP je također potreban za Moodle. Kako biste postigli bolje performanse, možete instalirati PHP 7.1 i nekoliko PHP 7.1 proširenja kako slijedi:

sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
sudo yum install mod_php71w php71w-common php71w-mbstring php71w-xmlrpc php71w-soap php71w-gd php71w-xml php71w-intl php71w-mysqlnd php71w-cli php71w-mcrypt php71w-ldap -y

Korak 5: Instalirajte Moodle 3.3.2+

5.1 Pripremite programske datoteke Moodlea

U vrijeme pisanja, najnovije stabilno izdanje Moodlea je Moodle 3.3.2+. Preuzmite i raspakirajte Moodle 3.3.2+arhivu na sljedeći način:

Napomena: URL za preuzimanje najnovijeg stabilnog izdanja Moodlea uvijek možete dobiti s njegove službene stranice za preuzimanje .

cd
yum install -y wget
wget https://download.moodle.org/download.php/direct/stable33/moodle-latest-33.tgz
sudo tar -zxvf moodle-latest-33.tgz -C /var/www/html
sudo chown -R root:root /var/www/html/moodle
5.2 Postavite namjenski imenik podataka za Moodle

Iz sigurnosnih razloga, ovaj direktorij podataka trebao bi biti izvan korijenskog web-direktorija:

sudo mkdir /var/moodledata
sudo chown -R apache:apache /var/moodledata
sudo chmod -R 755 /var/moodledata
5.3 Postavite virtualni host za Moodle

Napomena: ne zaboravite zamijeniti vrijednosti ServerAdmin, ServerName, ServerAlias, Errorlog, i CustomLogsvojim vlastitim.

cat <<EOF | sudo tee -a /etc/httpd/conf.d/moodle.conf
<VirtualHost *:80>
ServerAdmin admin@example.com
DocumentRoot /var/www/html/moodle/
ServerName moodle.example.com
ServerAlias www.moodle.example.com
<Directory /var/www/html/moodle/>
Options FollowSymLinks
AllowOverride All
Order allow,deny
allow from all
</Directory>
ErrorLog /var/log/httpd/moodle.example.com-error_log
CustomLog /var/log/httpd/moodle.example.com-access_log common
</VirtualHost>
EOF
5.4 Postavljanje SELinuxa

Na instanci poslužitelja Vultr CentOS 7 koju koristim, SELinux je onemogućen prema zadanim postavkama. To je vjerojatno manje sigurna, ali lakša sigurnosna politika. Ako ste u istom stanju i želite da tako i ostane, jednostavno zanemarite upute u ovom odjeljku i prijeđite na sljedeći odjeljak.

Ako koristite instancu poslužitelja s omogućenim SELinuxom u načinu provođenja, morate postaviti SELinux na sljedeći način.

Prikaži status SELinuxa:

sestatus

Na novoj instanci poslužitelja CentOS 7 Minimal x64 1708, izlaz je:

SELinux status:                 enabled
SELinuxfs mount:                /sys/fs/selinux
SELinux root directory:         /etc/selinux
Loaded policy name:             targeted
Current mode:                   enforcing
Mode from config file:          enforcing
Policy MLS status:              enabled
Policy deny_unknown status:     allowed
Max kernel policy version:      28

Instalirajte potrebne alate za upravljanje SELinuxom:

sudo yum install -y policycoreutils policycoreutils-python 

Postavite SELinux kontekste Moodle datoteka na sljedeći način:

sudo semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/moodle(/.*)?'
sudo restorecon -Rv '/var/www/html/moodle/'
sudo semanage fcontext -a -t httpd_sys_rw_content_t '/var/moodledata(/.*)?'
sudo restorecon -Rv '/var/moodledata/'
5.5 Instalirajte Moodle iz CLI
sudo /usr/bin/php /var/www/html/moodle/admin/cli/install.php

Kada se to od vas zatraži, navedite potrebne informacije u skladu s posebnim postavkama za vaše postavke. Sažeti podaci navedeni su u nastavku:

== Choose a language ==
en - English (en)
? - Available language packs
type value, press Enter to use default value (en)
: en
-------------------------------------------------------------------------------
== Data directories permission ==
type value, press Enter to use default value (2777)
: 2777
-------------------------------------------------------------------------------
== Web address ==
type value
: http://203.0.113.1
-------------------------------------------------------------------------------
== Data directory ==
type value, press Enter to use default value (/var/www/html/moodledata)
: /var/moodledata
-------------------------------------------------------------------------------
== Choose database driver ==
 mysqli
 mariadb
type value, press Enter to use default value (mysqli)
: mariadb
-------------------------------------------------------------------------------
== Database host ==
type value, press Enter to use default value (localhost)
: localhost
-------------------------------------------------------------------------------
== Database name ==
type value, press Enter to use default value (moodle)
: moodle
-------------------------------------------------------------------------------
== Tables prefix ==
type value, press Enter to use default value (mdl_)
: mdl_
-------------------------------------------------------------------------------
== Database port ==
type value, press Enter to use default value ()
:
-------------------------------------------------------------------------------
== Unix socket ==
type value, press Enter to use default value ()
:
-------------------------------------------------------------------------------
== Database user ==
type value, press Enter to use default value (root)
: moodleuser
-------------------------------------------------------------------------------
== Database password ==
type value
: yourpassword
-------------------------------------------------------------------------------
== Full site name ==
type value
: My Moodle Site
-------------------------------------------------------------------------------
== Short name for site (eg single word) ==
type value
: moodle
-------------------------------------------------------------------------------
== Admin account username ==
type value, press Enter to use default value (admin)
: admin
-------------------------------------------------------------------------------
== New admin user password ==
type value
: your-admin-password
-------------------------------------------------------------------------------
== New admin user email address ==
type value, press Enter to use default value ()
: admin@example.com
-------------------------------------------------------------------------------
== Upgrade key (leave empty to not set it) ==
type value
:
-------------------------------------------------------------------------------
Have you read these conditions and understood them?
type y (means yes) or n (means no)
: y
5.6 Izmijenite dopuštenja za /var/www/html/config.php

Nakon što je Moodle uspješno instaliran, morate dopustiti apachekorisniku da čita Moodle konfiguracije mijenjanjem dopuštenja na /var/www/html/config.phpsljedeći način:

sudo chmod o+r /var/www/html/moodle/config.php
5.7 Postavite cron posao

Dodatno, morate postaviti cron posao kako bi Moodle ispravno radio:

sudo crontab -u apache -e

Popunite cron datoteku sa:

* * * * *    /usr/bin/php /var/www/html/moodle/admin/cli/cron.php >/dev/null

Spremi i zatvori:

:wq!
5.8 Ponovno pokrenite Apache

Ponovo pokrenite Apache kako biste primijenili sve svoje izmjene:

sudo systemctl restart httpd.service
5.9 Izmijenite pravila vatrozida kako biste omogućili HTTP pristup
sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload

Na kraju, usmjerite svoj web preglednik na http://203.0.113.1da biste posjetili Moodle web stranicu. Za prijavu koristite korisničko ime i lozinku administratora koje ste prethodno postavili.

Ovim je naš vodič završen. Hvala na čitanju.

Ostavite komentar

Uspon strojeva: primjene AI u stvarnom svijetu

Uspon strojeva: primjene AI u stvarnom svijetu

Umjetna inteligencija nije u budućnosti, ovdje je upravo u sadašnjosti. U ovom blogu Pročitajte kako su aplikacije umjetne inteligencije utjecale na različite sektore.

DDOS napadi: kratak pregled

DDOS napadi: kratak pregled

Jeste li i vi žrtva DDOS napada i zbunjeni ste metodama prevencije? Pročitajte ovaj članak kako biste riješili svoje upite.

Jeste li se ikada zapitali kako hakeri zarađuju novac?

Jeste li se ikada zapitali kako hakeri zarađuju novac?

Možda ste čuli da hakeri zarađuju mnogo novca, ali jeste li se ikada zapitali kako zarađuju toliki novac? raspravimo.

Revolucionarni Googleovi izumi koji će vam olakšati život.

Revolucionarni Googleovi izumi koji će vam olakšati život.

Želite li vidjeti revolucionarne izume Googlea i kako su ti izumi promijenili život svakog čovjeka danas? Zatim čitajte na blogu kako biste vidjeli Googleove izume.

Friday Essential: Što se dogodilo s automobilima s umjetnom inteligencijom?

Friday Essential: Što se dogodilo s automobilima s umjetnom inteligencijom?

Koncept samovozećih automobila koji će krenuti na ceste uz pomoć umjetne inteligencije san je koji već neko vrijeme imamo. No, unatoč nekoliko obećanja, nigdje ih nema. Pročitajte ovaj blog kako biste saznali više…

Tehnološka singularnost: daleka budućnost ljudske civilizacije?

Tehnološka singularnost: daleka budućnost ljudske civilizacije?

Kako se znanost razvija velikom brzinom, preuzimajući mnoge naše napore, raste i rizik da se podvrgnemo neobjašnjivoj Singularnosti. Pročitajte što bi za nas mogla značiti singularnost.

Funkcionalnosti slojeva referentne arhitekture velikih podataka

Funkcionalnosti slojeva referentne arhitekture velikih podataka

Pročitajte blog kako biste na najjednostavniji način upoznali različite slojeve u arhitekturi velikih podataka i njihove funkcionalnosti.

Evolucija pohrane podataka – Infografika

Evolucija pohrane podataka – Infografika

Metode pohrane podataka su se razvijale možda od rođenja podataka. Ovaj blog pokriva evoluciju pohrane podataka na temelju infografike.

6 nevjerojatnih prednosti posjedovanja pametnih kućnih uređaja u našim životima

6 nevjerojatnih prednosti posjedovanja pametnih kućnih uređaja u našim životima

U ovom digitalnom svijetu, pametni kućni uređaji postali su ključni dio života. Evo nekoliko nevjerojatnih prednosti pametnih kućnih uređaja o tome kako naš život čine vrijednim življenja i jednostavnijim.

Ažuriranje dodataka macOS Catalina 10.15.4 uzrokuje više problema nego što ih rješava

Ažuriranje dodataka macOS Catalina 10.15.4 uzrokuje više problema nego što ih rješava

Nedavno je Apple izdao macOS Catalina 10.15.4 dodatak ažuriranju kako bi riješio probleme, ali čini se da ažuriranje uzrokuje više problema koji dovode do zalijevanja mac strojeva. Pročitajte ovaj članak da biste saznali više