Cara Memasang Moodle 3.3.x di CentOS 7

Moodle adalah Platform Pembelajaran sumber terbuka atau sistem pengurusan kursus (CMS) - pakej perisian Sumber Terbuka percuma yang direka untuk membantu pendidik membuat kursus dalam talian yang berkesan.

Tutorial ini akan merangkumi proses pemasangan keluaran stabil terbaru Moodle, Moodle 3.3.2+, pada pelayan CentOS 7.

Prasyarat

  • Contoh pelayan CentOS 7 x64 dengan RAM sekurang-kurangnya 2GB (disyorkan 4GB atau lebih).
  • Pengguna sudo .
  • Repositori EPEL yum.

Langkah 1: Kemas kini sistem

Log masuk ke pelayan anda melalui SSH menggunakan pengguna sudo untuk memasang epel, mengemas kini sistem, dan memulakan semula untuk menerapkan kemas kini.

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

Langkah 2: Pasang Apache 2.4.x

sudo yum install httpd -y

Dalam pengeluaran, anda harus membuang halaman selamat datang Apache yang telah ditetapkan:

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

Cegah Apache daripada menyenaraikan fail direktori web kepada pelawat:

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

Mulakan perkhidmatan Apache dan aktifkan secara automatik semasa boot

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

Langkah 3: Pasang MariaDB 10.2.x

Moodle menyimpan semua datanya ke Pangkalan Data MySQL. MariaDB adalah pengganti drop-in untuk MySQL dan kami akan memasang versi stabil terbaru, MariaDB 10.2.x.

3.1 Pasang dan mulakan 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 Selamat memasang MariaDB
sudo /usr/bin/mysql_secure_installation

Jawab soalan seperti di bawah, dan pastikan untuk menggunakan kata laluan root MariaDB yang kuat dan bukannya contoh yang ditunjukkan di bawah:

  • Masukkan kata laluan semasa untuk root (masukkan untuk tidak): Cukup tekan Enterbutang
  • Tetapkan kata laluan root? [Y / n]:Y
  • Kata laluan baharu: your-root-password
  • Masukkan semula kata laluan baru: your-root-password
  • Buang pengguna tanpa nama? [Y / n]:Y
  • Tidak membenarkan login root dari jauh? [Y / n]:Y
  • Keluarkan pangkalan data ujian dan akses ke dalamnya? [Y / n]:Y
  • Jadual keistimewaan ulang sekarang? [Y / n]:Y
3.3 Membuat pangkalan data MariaDB untuk Moodle

Masuk ke dalam shell MySQL sebagai root:

mysql -u root -p

Taip kata laluan root MariaDB yang anda tetapkan sebelum ini apabila digesa.

Di shell MySQL, buat pangkalan data moodle, pengguna moodleuserpangkalan data, kata laluan pengguna pangkalan data yourpasswordseperti berikut.

Catatan: Untuk tujuan keselamatan, anda harus mengganti kata laluan contoh yang yourpassworddisebutkan di atas dengan kata laluan anda sendiri.

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;

Langkah 4: Pasang sambungan PHP 7.1 dan perluasan PHP 7.1 yang diperlukan

PHP juga diperlukan oleh Moodle. Untuk mencapai prestasi yang lebih baik, anda boleh memasang PHP 7.1 dan beberapa sambungan PHP 7.1 seperti berikut:

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

Langkah 5: Pasang Moodle 3.3.2+

5.1 Sediakan fail program Moodle

Pada masa penulisan, keluaran stabil terbaru Moodle adalah Moodle 3.3.2+. Muat turun dan unzip Moodle 3.3.2+arkib seperti berikut:

Nota: Anda selalu boleh mendapatkan URL muat turun Moodle keluaran stabil terbaru dari halaman muat turun rasminya .

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 Sediakan direktori data khusus untuk Moodle

Untuk tujuan keselamatan, direktori data ini harus berada di luar direktori root web:

sudo mkdir /var/moodledata
sudo chown -R apache:apache /var/moodledata
sudo chmod -R 755 /var/moodledata
5.3 Sediakan hos maya untuk Moodle

Nota: Jangan lupa untuk menggantikan nilai-nilai ServerAdmin, ServerName, ServerAlias, Errorlog, dan CustomLogdengan orang yang anda sendiri.

cat <<EOF | sudo tee -a /etc/httpd/conf.d/moodle.conf
<VirtualHost *:80>
ServerAdmin [email protected]
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 Persediaan SELinux

Pada contoh pelayan Vultr CentOS 7 yang saya gunakan, SELinux dilumpuhkan secara lalai. Ini adalah dasar keselamatan yang mungkin kurang selamat tetapi lebih mudah. Sekiranya anda berada dalam keadaan yang sama dan ingin mengekalkannya seperti itu, abaikan arahan di bahagian ini dan pergi ke bahagian seterusnya.

Sekiranya anda menggunakan contoh pelayan dengan SELinux diaktifkan dalam mod penegakan, anda perlu menyiapkan SELinux seperti berikut.

Tunjukkan status SELinux:

sestatus

Pada contoh pelayan CentOS 7 Minimal x64 1708 baru, outputnya adalah:

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

Pasang alat pengurusan SELinux yang diperlukan:

sudo yum install -y policycoreutils policycoreutils-python 

Sediakan konteks SELinux fail Moodle seperti di bawah:

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 Pasang Moodle dari CLI
sudo /usr/bin/php /var/www/html/moodle/admin/cli/install.php

Apabila diminta, berikan maklumat yang diperlukan sesuai dengan tetapan khusus untuk persediaan anda. Maklumat ringkasan disenaraikan di bawah:

== 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 ()
: [email protected]
-------------------------------------------------------------------------------
== 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 Ubah kebenaran ke /var/www/html/config.php

Setelah Moodle berjaya dipasang, anda perlu membenarkan apachepengguna membaca konfigurasi Moodle dengan mengubah kebenaran /var/www/html/config.phpseperti di bawah:

sudo chmod o+r /var/www/html/moodle/config.php
5.7 Menyiapkan pekerjaan cron

Selain itu, anda perlu menyediakan tugas cron agar Moodle berjalan dengan betul:

sudo crontab -u apache -e

Isi fail cron dengan:

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

Simpan dan tutup:

:wq!
5.8 Mulakan semula Apache

Mulakan semula Apache untuk menerapkan semua pengubahsuaian anda:

sudo systemctl restart httpd.service
5.9 Ubah peraturan firewall untuk membenarkan akses HTTP
sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload

Akhirnya, arahkan penyemak imbas web anda http://203.0.113.1untuk melayari laman web Moodle. Gunakan nama pengguna dan kata laluan pentadbir yang anda tetapkan lebih awal untuk log masuk.

Ini menyimpulkan tutorial kami. Terima kasih untuk membaca.



Leave a Comment

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

6 Perkara Yang Sangat Menggila Tentang Nintendo Switch

6 Perkara Yang Sangat Menggila Tentang Nintendo Switch

Ramai daripada anda tahu Switch akan keluar pada Mac 2017 dan ciri baharunya. Bagi yang tidak tahu, kami telah menyediakan senarai ciri yang menjadikan 'Tukar' sebagai 'gajet yang mesti ada'.

Janji Teknologi Yang Masih Tidak Ditepati

Janji Teknologi Yang Masih Tidak Ditepati

Adakah anda menunggu gergasi teknologi memenuhi janji mereka? semak apa yang masih belum dihantar.

Fungsi Lapisan Seni Bina Rujukan Data Besar

Fungsi Lapisan Seni Bina Rujukan Data Besar

Baca blog untuk mengetahui lapisan berbeza dalam Seni Bina Data Besar dan fungsinya dengan cara yang paling mudah.

Bagaimana AI Boleh Mengambil Automasi Proses ke Tahap Seterusnya?

Bagaimana AI Boleh Mengambil Automasi Proses ke Tahap Seterusnya?

Baca ini untuk mengetahui cara Kecerdasan Buatan semakin popular di kalangan syarikat berskala kecil dan cara ia meningkatkan kebarangkalian untuk menjadikan mereka berkembang dan memberikan pesaing mereka kelebihan.

CAPTCHA: Berapa Lama Ia Boleh Kekal Sebagai Teknik Berdaya maju Untuk Perbezaan Manusia-AI?

CAPTCHA: Berapa Lama Ia Boleh Kekal Sebagai Teknik Berdaya maju Untuk Perbezaan Manusia-AI?

CAPTCHA telah menjadi agak sukar untuk diselesaikan oleh pengguna dalam beberapa tahun kebelakangan ini. Adakah ia dapat kekal berkesan dalam pengesanan spam dan bot pada masa hadapan?

Keunikan Teknologi: Masa Depan Tamadun Manusia yang Jauh?

Keunikan Teknologi: Masa Depan Tamadun Manusia yang Jauh?

Apabila Sains Berkembang pada kadar yang pantas, mengambil alih banyak usaha kita, risiko untuk menundukkan diri kita kepada Ketunggalan yang tidak dapat dijelaskan juga meningkat. Baca, apakah makna ketunggalan bagi kita.

Teleperubatan Dan Penjagaan Kesihatan Jauh: Masa Depan Ada Di Sini

Teleperubatan Dan Penjagaan Kesihatan Jauh: Masa Depan Ada Di Sini

Apakah teleperubatan, penjagaan kesihatan jauh dan impaknya kepada generasi akan datang? Adakah ia tempat yang baik atau tidak dalam situasi pandemik? Baca blog untuk mencari paparan!

Pernahkah Anda Terfikir Bagaimana Penggodam Mendapatkan Wang?

Pernahkah Anda Terfikir Bagaimana Penggodam Mendapatkan Wang?

Anda mungkin pernah mendengar bahawa penggodam memperoleh banyak wang, tetapi pernahkah anda terfikir bagaimana mereka memperoleh wang seperti itu? Mari berbincang.

Kemas Kini Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Isu Daripada Penyelesaian

Kemas Kini Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Isu Daripada Penyelesaian

Baru-baru ini Apple mengeluarkan macOS Catalina 10.15.4 kemas kini tambahan untuk menyelesaikan masalah tetapi nampaknya kemas kini itu menyebabkan lebih banyak masalah yang membawa kepada pemusnahan mesin mac. Baca artikel ini untuk mengetahui lebih lanjut