Ինչպես տեղադրել Moodle LMS-ը Ubuntu 24.04 սերվերի վրա
Այս ձեռնարկը գոյություն ունի ՕՀ-ի այս տարբերակների համար
- Ubuntu 24.04 (Noble Numbat)
- Ubuntu 22.04 (Jammy Jellyfish)
- Ubuntu 20.04 (Կիզակետային Fossa)
- Ubuntu 16.04 (Xenial Xerus)
Այս էջում
- Նախադրյալներ
- Կախվածությունների տեղադրում
- MariaDB սերվերի կարգավորում
- Տվյալների բազայի և օգտագործողի ստեղծում
- PHP-ի կարգավորում
- Moodle-ի սկզբնական կոդը ներբեռնվում է
- Apache վիրտուալ հոսթի կարգավորում
- Moodle-ի ապահովում UFW-ի հետ
- Moodle-ի ապահովում HTTPS-ով
- Moodle-ի տեղադրում
- Եզրակացություն
Moodle-ը հանրահայտ բաց կոդով հարթակ է, որն օգտագործվում է կրթական հաստատությունների կողմից ամբողջ աշխարհում՝ առցանց դասընթացներ ստեղծելու, բովանդակությունը կառավարելու և համագործակցային ուսուցումը հեշտացնելու համար: Ubuntu-ում Moodle-ի գործարկումը սովորական ընտրություն է՝ շնորհիվ Ubuntu-ի կայունության, անվտանգության և ծրագրային փաթեթների լայն շրջանակի աջակցության: Գործընթացը ներառում է այնպիսի անհրաժեշտ բաղադրիչների տեղադրում, ինչպիսիք են Apache-ը կամ Nginx-ը որպես վեբ սերվեր, MySQL կամ PostgreSQL՝ որպես տվյալների բազա, և PHP-ը՝ որպես սկրիպտավորման լեզու, որոնք բոլորն էլ լավ աջակցվում են Ubuntu-ում: Այս կարգավորումը թույլ է տալիս հաստատություններին ստեղծել ամուր, մասշտաբային և հարմարեցված առցանց ուսուցման միջավայր, որը կարող է հարմարեցվել հատուկ կրթական կարիքներին:
Այս ձեռնարկում մենք ձեզ ցույց կտանք, թե ինչպես տեղադրել Moodle-ը Ubuntu 24.04 սերվերի վրա: Դուք Moodle-ը կտեղադրեք LAMP Stack-ով, այնուհետև կապահովեք Moodle-ը UFW-ով և HTTPS-ով Certbot-ի և Letsencrypt-ի միջոցով:
Նախադրյալներ
Նախքան սկսելը, համոզվեք, որ ունեք հետևյալը.
- Ubuntu 24.04 սերվեր:
- Ոչ արմատական օգտվող, ադմինիստրատորի արտոնություններով:
- Դոմեյն անուն, որը մատնանշված է սերվերի IP հասցեին:
- UFW firewall-ը գործում է և աշխատում է:
Կախվածությունների տեղադրում
Moodle-ը PHP-ով գրված բաց կոդով ուսուցման հարթակ է: Moodle-ը տեղադրելու համար ձեզ հարկավոր են Apache/Nginx, MySQL/MariaDB/PostgreSQL և PHP: Այս բաժնում դուք կտեղադրեք LAMP Stack-ը (Linux, Apache, MariaDB և PHP) Ubuntu-ում և տեղադրեք Moodle-ը դրա վերևում:
Սկսելու համար գործարկեք հետևյալ հրամանը և թարմացրեք ձեր Ubuntu փաթեթի ինդեքսը:
sudo apt update
Այժմ կատարեք ստորև նշված հրամանը՝ LAMP Stack (Apache, MariaDB և PHP) կախվածությունները տեղադրելու համար: Մուտքագրեք «Y»՝ տեղադրումը հաստատելու համար:
sudo apt install apache2 mariadb-server php-cli php-intl php-xmlrpc php-soap php-mysql php-zip php-gd php-tidy php-mbstring php-curl php-xml php-pear php-bcmath libapache2-mod-php
Տեղադրումն ավարտվելուց հետո ստուգեք Apache ծառայության կարգավիճակը ստորև նշված հրամանով:
sudo systemctl is-enabled apache2
sudo systemctl status apache2
Հետևյալում կարող եք տեսնել, որ Apache վեբ սերվերն աշխատում է:
Ստուգեք MariaDB տվյալների բազայի սերվերը հետևյալ հրամանով. Դուք կտեսնեք, որ MariaDB սերվերն աշխատում է:
sudo systemctl is-enabled mariadb
sudo systemctl status mariadb
Ի վերջո, ստուգեք PHP տարբերակը և միացված ընդլայնումները հետևյալով.
php -v
php -m
Դուք կտեսնեք, որ PHP 8.3-ը տեղադրված է ձեր Ubuntu սերվերում:
MariaDB սերվերի կարգավորում
Կախվածությունները տեղադրվելուց հետո դուք պետք է փոխեք լռելյայն MariaDB պահեստավորման շարժիչը «InnoDB»-ի, որը պահանջվում է Moodle-ի կողմից: Դա կարելի է անել՝ խմբագրելով MariaDB սերվերի կոնֆիգուրացիան: Եվ հետո, դուք նաև կապահովեք MariaDB սերվերի տեղակայումը՝ օգտագործելով «mariadb_secure_installation» կոմունալը:
Բացեք MariaDB սերվերի կազմաձևման ֆայլը «/etc/mysql/mariadb.conf.d/50-server.cnf» «nano» խմբագրիչով:
sudo vim /etc/mysql/mariadb.conf.d/50-server.cnf
Ավելացրեք հետևյալ կոնֆիգուրացիան «[mysqld]» բաժնում: Սա կփոխի լռելյայն պահպանման շարժիչը «innodb»-ի:
innodb_file_format = Barracuda
default_storage_engine = innodb
innodb_large_prefix = 1
innodb_file_per_table = 1
Պահպանեք ֆայլը և դուրս եկեք խմբագրիչից:
Այժմ գործարկեք «systemctl» հրամանը ստորև՝ MariaDB սերվերը վերագործարկելու և ձեր փոփոխությունները կիրառելու համար:
sudo systemctl restart mariadb
Ի վերջո, գործարկեք «mariadb_secure_installation» հրամանը ստորև՝ MariaDB արմատային օգտվողը կարգավորելու և ձեր տեղակայումը ապահովելու համար:
sudo mariadb_secure_installation
Գործընթացի ընթացքում ձեզ կհարցնեն հետևյալը.
- Լռելյայն MariaDB սերվերի առանց արմատային գաղտնաբառի տեղադրման համար սեղմեք ENTER, երբ գաղտնաբառի մասին հարցնում են:
- MariaDB արմատային օգտվողների համար տեղական նույնականացումը ապահովված է լռելյայնորեն, մուտքագրեք «n», երբ խնդրվում է նույնականացման մեթոդը փոխել «unix_socket»-ի:
- Մուտքագրեք «Y»՝ նոր MariaDB արմատային գաղտնաբառ ստեղծելու համար: Այնուհետև մուտքագրեք ուժեղ գաղտնաբառը ձեր MariaDB արմատային օգտվողի համար և կրկնեք:
- MariaDB արմատական օգտագործողի համար հեռակա նույնականացումն անջատելու խնդրանքով, համաձայնության համար մուտքագրեք «Y»:
- MariaDB սերվերի լռելյայն տեղադրումը գալիս է տվյալների բազայի «փորձարկում» և թույլ է տալիս անանուն օգտագործողին մուտք գործել այն: Մուտքագրեք «Y» երկու կարգավորումների համար՝ կանխադրված տվյալների բազայի «թեստը» հեռացնելու և անանուն արտոնությունը հեռացնելու համար:
- Վերջապես, մուտքագրեք «Y»՝ աղյուսակի վերաբեռնման արտոնությունները հաստատելու համար:
Տվյալների բազայի և օգտագործողի ստեղծում
Այժմ, երբ դուք կարգավորել եք MariaDB սերվերը, եկեք ստեղծենք նոր տվյալների բազա և օգտվող «mariadb» հաճախորդի միջոցով:
Մուտք գործեք MariaDB սերվեր՝ ստորև «mariadb» հաճախորդի հրամանով: Մուտքագրեք ձեր MariaDB արմատային գաղտնաբառը, երբ ձեզ հուշեն:
sudo mariadb -u root -p
Այժմ կատարեք հետևյալ հարցումները՝ «moodle» նոր տվյալների բազա, «moodle» օգտվող ստեղծելու համար և համոզվեք, որ փոխել եք գաղտնաբառը ձեր տեղեկություններով:
CREATE DATABASE moodle DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
GRANT ALL ON moodle.* TO 'moodle'@'localhost' IDENTIFIED BY "MoodlePassw0rd";
FLUSH PRIVILEGES;
QUIT
PHP-ի կարգավորում
Այս բաժնում դուք կխմբագրեք «php.ini» PHP կոնֆիգուրացիան և կփոխեք որոշ կանխադրված արժեքներ, որոնք պահանջվում են Moodle-ի կողմից:
Բացեք PHP կոնֆիգուրացիան '/etc/php/8.3/apache2/php.ini' 'nano' խմբագրիչով:
sudo nano /etc/php/8.3/apache2/php.ini
Փոխեք լռելյայն կոնֆիգուրացիան հետևյալով. Համոզվեք, որ հարմարեցրեք «հիշողության_սահմանը» և «date_timezone» տարբերակները ձեր տեղեկություններով:
memory_limit = 256M
upload_max_filesize = 60M
max_execution_time = 300
date.timezone = Europe/Amsterdam
max_input_vars = 5000
Ավարտելուց հետո պահեք ֆայլը և դուրս եկեք:
Վերջապես, գործարկեք ստորև նշված հրամանը՝ Apache վեբ սերվերը վերագործարկելու և ձեր փոփոխությունները PHP-ում կիրառելու համար:
sudo systemctl restart apache2
Moodle-ի սկզբնական կոդը ներբեռնվում է
Այս պահին դուք տեղադրել և կարգավորել եք LAMP Stack-ը: Ներբեռնենք Moodle-ի սկզբնական կոդը և կազմաձևենք Moodle-ի տեղադրման գրացուցակը:
Գնացեք «/var/www» գրացուցակ և ներբեռնեք Moodle-ի սկզբնական կոդը՝ օգտագործելով «wget» հրամանը: Համոզվեք, որ այցելեք Moodle-ի ներբեռնման էջը՝ վերջին տարբերակի հղումը ստանալու համար: Այս դեպքում դուք կներբեռնեք վերջին կայուն Moodle 40.4-ը:
cd /var/www
wget https://download.moodle.org/download.php/direct/stable404/moodle-latest-404.tgz
Moodle-ը ներբեռնելուց հետո հանեք այն ստորև «tar» հրամանով: Moodle-ի սկզբնական կոդը հասանելի կլինի «/var/www/moodle» գրացուցակում:
tar xvf moodle-latest-404.tgz
Վերջապես, կատարեք ստորև նշված հրամանը՝ «/var/www/moodledata» նոր տվյալների գրացուցակ ստեղծելու համար, փոխեք Moodle գրացուցակի սեփականությունը «www-data» օգտագործողի, և Համոզվեք, որ ինչպես Moodle-ը, այնպես էլ տվյալների գրացուցակը գրավոր են «www-data» օգտվողի կողմից:
sudo mkdir -p /var/www/moodledata
sudo chown -R www-data:www-data /var/www/moodle /var/www/moodledata
sudo chmod u+rwx /var/www/moodle /var/www/moodledata
Apache վիրտուալ հոսթի կարգավորում
Ներբեռնված Moodle-ով դուք կստեղծեք նոր Apache-ի վիրտուալ հոսթ ֆայլ՝ Moodle-ը գործարկելու համար: Այսպիսով, համոզվեք, որ ձեր տիրույթը պատրաստ է և լուծված է ձեր Ubuntu սերվերի IP հասցեով:
Նախ գործարկեք «a2enmod» հրամանը ստորև՝ «վերագրել» մոդուլն ակտիվացնելու համար:
sudo a2enmod rewrite
Ստեղծեք նոր Apache վիրտուալ հոսթի ֆայլ «/etc/apache2/sites-available/moodle.conf» հետևյալ «nano» խմբագրիչով:
sudo nano /etc/apache2/sites-available/moodle.conf
Տեղադրեք հետևյալ կոնֆիգուրացիան և համոզվեք, որ փոխեք տիրույթի անունը ձեր տեղեկություններով:
<VirtualHost *:80>
DocumentRoot /var/www/moodle/
ServerName moodle.howtoforge.local
ServerAdmin [email
<Directory /var/www/moodle/>
Options +FollowSymlinks
AllowOverride All
Require all granted
</Directory>
ErrorLog /var/log/apache2/moodle_error.log
CustomLog /var/log/apache2/moodle_access.log combined
</VirtualHost>
Պահպանեք ֆայլը և ավարտին հասցրեք խմբագրիչը:
Այժմ կատարեք հետևյալ հրամանը՝ «moodle.conf» ֆայլը միացնելու և ձեր Apache-ի շարահյուսությունը ստուգելու համար: Եթե ունեք Apache-ի ճիշտ շարահյուսություն, կտեսնեք «Սինտաքսը լավ է»:
sudo a2ensite moodle.conf
sudo apachectl configtest
Ի վերջո, գործարկեք «systemctl» հրամանը՝ Apache-ն վերագործարկելու և ձեր փոփոխությունները կիրառելու համար:
sudo systemctl restart apache2
Moodle-ի ապահովում UFW-ի հետ
Այս քայլում դուք կբացեք HTTP և HTTPS արձանագրությունները UFW-ի (Uncomplicated Firewall) միջոցով: Համոզվեք, որ դուք UFW-ն աշխատում եք նախքան սկսելը:
Գործարկեք ստորև նշված հրամանը՝ «Apache Full» պրոֆիլը UFW-ում միացնելու համար: Դրանով կթույլատրվի HTTP և HTTPS տրաֆիկը։
sudo ufw allow 'Apache Full'
Այժմ ստուգեք UFW-ի միացված կանոնների ցանկը հետևյալով. Դուք կտեսնեք, որ «Apache Full» պրոֆիլը միացված է:
sudo ufw status
Moodle-ի ապահովում HTTPS-ով
Բացի firewall-ից, դուք նաև կստեղծեք SSL/TLS վկայագրեր և կապահովեք Moodle-ը HTTPS-ով: Այս բաժնում դուք կիրականացնեք HTTPS Moodle-ի համար Certbot-ի և Letsencrypt-ի միջոցով: Եթե դուք տեղադրում եք Moodle-ը տեղում, բաց թողեք սա:
Տեղադրեք 'certbot' և 'python3-certbot-apache' փաթեթները հետևյալ հրամանով։
sudo apt install certbot python3-certbot-apache -y
Տեղադրումն ավարտվելուց հետո ստորև գործարկեք «certbot» հրամանը՝ Moodle-ի համար SSL/TLS վկայագրեր ստեղծելու համար: Համոզվեք, որ փոխեք տիրույթի անունը և էլփոստի հասցեն ձեր տեղեկություններով:
sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email [email -d moodle.howtoforge.local
Երբ գործընթացը ավարտվի, ձեր SSL վկայականները հասանելի կլինեն «/etc/letsencrypt/live/domain.com» գրացուցակում, և ձեր Moodle-ի տեղադրումը պետք է ավտոմատ կերպով ապահովվի HTTPS-ով:
Moodle-ի տեղադրում
Այցելեք ձեր Moodle տիրույթի անունը, օրինակ՝ https://moodle.howtoforge.local/ և կտեսնեք տեղադրման հրաշագործը:
Ընտրեք ձեր լռելյայն լեզուն և սեղմեք Հաջորդը:
Մուտքագրեք ձեր տվյալների գրացուցակը Moodle «/var/www/moodledata»-ի համար:
Ընտրեք MariaDB որպես տվյալների բազայի վարորդ:
Մուտքագրեք ձեր MariaDB տվյալների բազայի և օգտագործողի մանրամասները:
Սեղմեք Շարունակել՝ հեղինակային իրավունքի մասին ծանուցումը հաստատելու համար:
Սերվերի ստուգումների բաժնում համոզվեք, որ ձեր միջավայրը պատրաստ է:
Այժմ Moodle-ի տեղադրումը կմշակվի:
Տեղադրումն ավարտվելուց հետո մուտքագրեք նոր ադմինիստրատորի օգտատերը, էլփոստը և գաղտնաբառը Moodle-ի համար:
Այժմ դուք կտեսնեք Moodle-ի վահանակը հետևյալ կերպ.
Եզրակացություն
Շնորհավորում եմ: Դուք ավարտել եք Moodle-ի տեղադրումը Ubuntu 24.04 սերվերի վրա: Դուք տեղադրել եք Moodle 40.4-ը Ubuntu-ում LAMP Stack-ով (Linux, Apache, MariaDB և PHP), և Moodle-ն ապահովել եք UFW-ով (Uncomplicated Firewall) և HTTPS-ով Certbot-ի և Letsencrypt-ի միջոցով: