Parakushtet
Hapi 1: Përditësoni sistemin
Hapi 2: Instaloni Apache 2.4.x
Hapi 3: Instaloni MariaDB 10.2.x
Hapi 4: Instaloni PHP 7.1 dhe shtesat e nevojshme PHP 7.1
Hapi 5: Instaloni Moodle 3.3.2+
Moodle është një platformë mësimi me burim të hapur ose sistem i menaxhimit të kurseve (CMS) - një paketë softuerësh me burim të hapur, e krijuar për të ndihmuar arsimtarët të krijojnë kurse efektive në internet.
Ky tutorial do të mbulojë procesin e instalimit të versionit më të fundit të qëndrueshëm të Moodle, Moodle 3.3.2+, në një server CentOS 7.
Parakushtet
- Një shembull i serverit CentOS 7 x64 me të paktën 2 GB RAM (rekomandohet 4 GB ose më shumë).
- Një përdorues sudo .
- Depoja e EPEL yum.
Hapi 1: Përditësoni sistemin
Hyni në serverin tuaj nëpërmjet SSH duke përdorur përdoruesin sudo për të instaluar epel, përditësuar sistemin dhe rinisni për të aplikuar përditësimet.
sudo yum install epel-release -y
sudo yum update -y && sudo shutdown -r now
Hapi 2: Instaloni Apache 2.4.x
sudo yum install httpd -y
Në prodhim, duhet të hiqni faqen e mirëseardhjes të paracaktuar të Apache:
sudo sed -i 's/^/#&/g' /etc/httpd/conf.d/welcome.conf
Parandaloni Apache që të listojë skedarët e direktorisë së internetit tek vizitorët:
sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/httpd/conf/httpd.conf
Nisni shërbimin Apache dhe aktivizoni atë të fillojë automatikisht në nisje
sudo systemctl start httpd.service
sudo systemctl enable httpd.service
Hapi 3: Instaloni MariaDB 10.2.x
Moodle ruan të gjitha të dhënat e tij në një bazë të dhënash MySQL. MariaDB është një zëvendësim për MySQL dhe ne do të instalojmë versionin më të fundit të qëndrueshëm, MariaDB 10.2.x.
3.1 Instaloni dhe filloni 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 Siguroni instalimin e MariaDB
sudo /usr/bin/mysql_secure_installation
Përgjigjuni pyetjeve si më poshtë dhe sigurohuni që të përdorni një fjalëkalim të fortë rrënjë MariaDB në vend të shembullit të treguar më poshtë:
- Futni fjalëkalimin aktual për root (futni për asnjë): Thjesht shtypni
Enterbutonin
- Të vendoset fjalëkalimi i rrënjës? [Y/n]:
Y
- Fjalëkalim i ri:
your-root-password
- Rifusni fjalëkalimin e ri:
your-root-password
- Të hiqen përdoruesit anonimë? [Y/n]:
Y
- Të mos lejohet identifikimi i rrënjës nga distanca? [Y/n]:
Y
- Të hiqet baza e të dhënave të testimit dhe qasja në të? [Y/n]:
Y
- Rifresko tabelat e privilegjeve tani? [Y/n]:
Y
3.3 Krijoni një bazë të dhënash MariaDB për Moodle
Hyni në guaskën MySQL si root:
mysql -u root -p
Shkruani fjalëkalimin rrënjë MariaDB që keni vendosur më herët kur ju kërkohet.
Në guaskën MySQL, krijoni një bazë të dhënash moodle, një përdorues moodleusertë bazës së të dhënave, fjalëkalimin e përdoruesit të bazës së të dhënave yourpasswordsi më poshtë.
Shënim: Për qëllime sigurie, duhet të zëvendësoni shembullin e fjalëkalimit të yourpasswordpërmendur më sipër me fjalëkalimin tuaj.
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;
Hapi 4: Instaloni PHP 7.1 dhe shtesat e nevojshme PHP 7.1
PHP kërkohet gjithashtu nga Moodle. Për të arritur performancë më të mirë, mund të instaloni PHP 7.1 dhe disa shtesa PHP 7.1 si më poshtë:
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
Hapi 5: Instaloni Moodle 3.3.2+
5.1 Përgatitni skedarët e programit Moodle
Në kohën e shkrimit, versioni më i fundit i qëndrueshëm i Moodle është Moodle 3.3.2+. Shkarkoni dhe hiqni Moodle 3.3.2+arkivin si më poshtë:
Shënim: Ju mund të merrni gjithmonë URL-në e shkarkimit të versionit më të fundit të qëndrueshëm të Moodle nga faqja e tij zyrtare e shkarkimit .
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 Vendosni një direktori të dedikuar të të dhënave për Moodle
Për qëllime sigurie, kjo direktori e të dhënave duhet të jetë jashtë direktoriumit rrënjësor të uebit:
sudo mkdir /var/moodledata
sudo chown -R apache:apache /var/moodledata
sudo chmod -R 755 /var/moodledata
5.3 Vendosni një host virtual për Moodle
Shënim: Mos harroni të zëvendësoni vlerat e ServerAdmin, ServerName, ServerAlias, Errorlog, dhe CustomLogme ato tuajat.
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 Konfiguro SELinux
Në shembullin e serverit Vultr CentOS 7 që po përdor, SELinux është i çaktivizuar si parazgjedhje. Është ndoshta një politikë sigurie më pak e sigurt, por më e lehtë. Nëse jeni në të njëjtën gjendje dhe dëshironi ta mbani atë në atë mënyrë, thjesht injoroni udhëzimet në këtë seksion dhe shkoni te seksioni tjetër.
Nëse jeni duke përdorur një shembull serveri me SELinux të aktivizuar në modalitetin e zbatimit, duhet të konfiguroni SELinux si më poshtë.
Trego statusin e SELinux:
sestatus
Në një shembull të ri të serverit CentOS 7 Minimal x64 1708, dalja është:
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
Instaloni mjetet e nevojshme të menaxhimit SELinux:
sudo yum install -y policycoreutils policycoreutils-python
Vendosni kontekstet SELinux të skedarëve Moodle si më poshtë:
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 Instaloni Moodle nga CLI
sudo /usr/bin/php /var/www/html/moodle/admin/cli/install.php
Kur të kërkohet, jepni informacionin e nevojshëm sipas cilësimeve specifike të konfigurimit tuaj. Informacionet përmbledhëse janë renditur më poshtë:
== 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 Ndryshoni lejet për /var/www/html/config.php
Pasi të keni instaluar me sukses Moodle, ju duhet të lejoni apachepërdoruesin të lexojë konfigurimet e Moodle duke modifikuar lejet /var/www/html/config.phpsi më poshtë:
sudo chmod o+r /var/www/html/moodle/config.php
5.7 Vendosni një punë të cron
Për më tepër, ju duhet të konfiguroni një punë cron në mënyrë që të mbani Moodle të funksionojë siç duhet:
sudo crontab -u apache -e
Plotësoni skedarin cron me:
* * * * * /usr/bin/php /var/www/html/moodle/admin/cli/cron.php >/dev/null
Ruani dhe hiqni dorë:
:wq!
5.8 Rinisni Apache
Rinisni Apache në mënyrë që të aplikoni të gjitha modifikimet tuaja:
sudo systemctl restart httpd.service
5.9 Modifikoni rregullat e murit të zjarrit për të lejuar aksesin HTTP
sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload
Më në fund, drejtojeni shfletuesin tuaj të internetit për http://203.0.113.1të vizituar faqen e internetit të Moodle. Përdorni emrin e përdoruesit dhe fjalëkalimin e administratorit që keni vendosur më herët për t'u identifikuar.
Kjo përfundon tutorialin tonë. Faleminderit per leximin.