В данном руководстве мы установим приложение Moodle на виртуальный сервер, чтобы не проделывать каждый раз одну и ту-же работу, в качестве vps сервера мы возьмем сборку веб стек на Debian 12. Данная сборка специально создана чтобы быстро разворачивать веб приложения требующие php и mariadb. Скачаем последнюю версию с официального сайта, выполним установку через браузер. Все необходимые службы уже установлены и настроены. Вы также можете заказать vps сервер с предустановленным Moodle, Вам останется только указать логин и пароль для администрирования. |
1. Скачаем последнюю версию Moodle |
|
apt update && sudo apt upgrade
wget https://download.moodle.org/download.php/stable402/moodle-latest-402.zip
mkdir -p /var/www/moodledata
unzip moodle-latest-402.zip -d /var/www/
mv /var/www/moodle/ /var/www/domain.tld
apt install php8.2-intl php8.2-soap
2. Создадим базу данных и пропишем в настройках
mariadb -u root
create database moodle;
grant all privileges on moodle.* to user@localhost identified by 'your-password';
flush privileges;
exit;
3. Настройка веб службы
Назначим права и создадим файл конфигурации нашего домена:
chown www-data:www-data /var/www/domain.tld/ -R
mv /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/domain.tld.conf
Файл конфигурации:
/etc/nginx/conf.d/domain.tld.conf
server {
listen 80;
listen [::]:80;
server_name _;
root /var/www/domain.tld;
index index.php index.html index.htm index.nginx-debian.html;
location / {
try_files $uri $uri/ /index.php;
}
location ~ \.php$ {
fastcgi_pass unix:/run/php/php8.2-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
include snippets/fastcgi-php.conf;
}
location /phpmyadmin {
auth_basic "Admin Login";
auth_basic_user_file /etc/nginx/pma_access;
}
# A long browser cache lifetime can speed up repeat visits to your page
location ~* \.(jpg|jpeg|gif|png|webp|svg|woff|woff2|ttf|css|js|ico|xml)$ {
access_log off;
log_not_found off;
expires 360d;
}
# disable access to hidden files
location ~ /\.ht {
access_log off;
log_not_found off;
deny all;
}
}
Перезапустим службы:
service nginx restart
/etc/init.d/php8.2-fpm restart
Сменим домашнюю директорию у ftp пользователя на нашу:
/etc/passwd
ftpuser:x:1000:1000:,,,:/var/www/domain.tld:/bin/bash
Сменим путь к phpMyAdmin для нашей конфигурации:
ln -s /usr/share/phpmyadmin /var/www/domain.tld/
Измените domain.tld на Ваш, уже настроенный в DNS редакторе на ip адрес VPS сервера. Таким образом Вы можете по аналогии добавить несколько сайтов. Перейдите в браузер по настроенному домену http://domain.tld/ и завершите установку в браузере. Вам будет предложено указать логин и пароль администратора. На этом установка завершена. В случае переноса сайта Вы можете разместить существующие файлы и сделать импорт базы данных.
4. Чтобы завершить установку необходимо указать логин и пароль, перейдите по ссылке:
http:///
После обновите страницу и проверьте работу приложения.
Административный раздел доступ по ссылке http://server-ip/moodle/admin/
Установка Moodle завершена.