웹서버 apache 설치
sudo yum install httpd
PHP8.3설치
sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
sudo dnf -y install http://rpms.remirepo.net/enterprise/remi-release-8.rpm
sudo dnf module list php
sudo dnf module reset php
sudo dnf module install php:remi-8.3
moodle에서 요구하는 PHP확장모듈 설치
yum install php-zip php-mysqli php-gd php-intl php-sodium php-soap php-opcache
moodle에서 요구하는 php설정 변경
vi /etc/php.ini
// line 436의 max_input_vars = 1000을 권장값인 5000으로 수정
max_input_vars = 5000
// line 865의 upload_max_filesize = 2MB 를 원하는 최대업로드 사이즈로 수정.
upload_max_filesize = 2048M
php설정 변경 적용위해 아파치 및 fpm재기동
sudo systemctl restart httpd
sudo systemctl restart php-fpm.service
웹서버 방화벽 개방
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
sudo firewall-cmd --zone=public --add-port=443/tcp --permanent
sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent
sudo firewall-cmd --reload
아파치 실행
systemctl enable httpd
systemctl restart httpd
moodle web root 경로 생성 및 moodledata 디렉터리 생성 및 권한 설정
cd /
mkdir data
cd /data
mkdir moodledata
chmod 777 moodledata
apache vhost설정
vi /etc/httpd/conf/httpd.conf
//가장 마지막줄에 아래 내용 추가
Include /etc/httpd/conf/vhost.conf
<Directory "/data">
AllowOverride None
Require all granted
</Directory>
vi /etc/httpd/conf/vhost.conf
//아래 내용 추가
## lms.tabspace.kr start
<VirtualHost *:80>
ServerAdmin abuse@tabspace.kr
DocumentRoot /data/moodle
ServerName lms.tabspace.kr
ServerAlias www.lms.tabspace.kr
ErrorLog logs/lms.tabspace.kr-error_log
CustomLog logs/lms.tabspace.kr-access_log common
</VirtualHost>
## lms.tabspace.kr end
apache 재시작
systemctl restart httpd
git 설치
sudo yum install git
moodle 4.4 다운로드 및 디렉터리 권한 설정
- 버전업데이트의 용이성으로 인해, git으로의 설치를 권장함.
cd /data
git clone -b MOODLE_404_STABLE git://git.moodle.org/moodle.git
chmod -R 0777 /data/moodle
[참고] Moodle 공식 git에서 최신의 stable버전을 확인. 글작성시점 기준으로는 4.4버전이 최신
https://git.moodle.org/gw?p=moodle.git;a=summary
mariadb 설치
yum repository 추가
wget https://downloads.mariadb.com/MariaDB/mariadb_repo_setup
chmod a+x mariadb_repo_setup
./mariadb_repo_setup --mariadb-server-version="mariadb-10.11"
yum install MariaDB-server MariaDB-client MariaDB-common
mariadb start
systemctl restart mariadb
systemctl enable mariadb
systemctl status mariadb
mariadb root password 변경
mariadb-admin -uroot password '변경할비밀번호'
mariadb 접속
mariadb -u root -p
use mysql
moodle용 db생성
CREATE DATABASE moodle DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
moodle용 mariadb user생성
CREATE USER 'moodle'@'%' IDENTIFIED BY '비밀번호';
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,CREATE TEMPORARY TABLES,DROP,INDEX,ALTER ON moodle.* TO 'moodle'@'%'
FLUSH PRIVILEGES;
ssl 인증서 발급을 위한 certbot 설치
sudo dnf install epel-release
sudo dnf install certbot python3-certbot-apache mod_ssl
sudo certbot --apache
// AH00526: Syntax error on line 85 of /etc/httpd/conf.d/ssl.conf:
// SSLCertificateFile: file '/etc/pki/tls/certs/localhost.crt' does not exist or is empty
// certbot이 실행안되고 위와 같이 오류난경우, 로컬 키 강제생성
sudo openssl req -newkey rsa:2048 -nodes -keyout /etc/pki/tls/private/localhost.key -x509 -days 365 -out /etc/pki/tls/certs/localhost.crt
// 만약 apache 재실행 안되는 경우, 기본 httpd.conf에 ServerName을 localhost로 추가함
vi /etc/httpd/conf/httpd.conf
98 ServerName localhost
# apache 재시작
systemctl restart httpd
웹브라우저에서 moodle을 호스팅하고자 하는 서버로 접속
언어선택
경로확인
mariadb선택
데이터베이스 접속정보 입력
투어가 실행되면 Moodle 4.4 설치완료
moodle 스케쥴링을 위한 crontab 설정
crontab -e
* * * * * /usr/bin/php /data/moodle/admin/cli/cron.php >/dev/null
'OpenSource > Moodle' 카테고리의 다른 글
Moodle SSL(https) 적용하기 - bitnami 기준 let's encrypt 자동 script 적용 (0) | 2020.09.03 |
---|---|
Moodle에서 발송한 이메일에 링크가 127.0.0.1 로 표시된 경우 해결법 (0) | 2020.09.02 |
Moodle에서 올바른 Gmail 로그인 정보를 입력해도 이메일(SMTP) 발송이 되지 않는 경우 해결법 (0) | 2020.09.01 |
무들(Moodle) 부스트(Boost) 테마에서 하단 푸터(footer)영역 제거하기 (0) | 2020.03.26 |
Moodle 이미지 첨부 시 Description not necessary 자동체크 하기 (0) | 2020.03.26 |