Moodle 설치 · 4 min read · Nov 07, 2025
ISPConfig에 Moodle 설치하는 방법
Moodle은 교육자, 관리자 및 학습자에게 개인화된 학습 환경을 만들기 위해 단일 강력하고 안전하며 통합된 시스템을 제공하도록 설계된 학습 플랫폼입니다.
교육, 전자 학습 및 인증 시험 등 다양한 환경에서 사용됩니다.
저는 운영 체제 과정에서 학생들을 가르치기 위해 매일 개인적으로 사용할 것이며, 교사와 학생 모두 그것을 좋아합니다.
이 튜토리얼에서는 ISPConfig 내에서 웹사이트로 설치하는 방법과 Let’s Encrypt의 SSL 인증서도 함께 설치하는 방법을 배울 것입니다.
이 튜토리얼은 Debian 8을 기반으로 하지만 Ubuntu 및 기타 ISPConfig 지원 배포판에서도 잘 작동해야 합니다.
시작하기 전에 필요한 사항은 무엇인가요?
- ISPConfig 설치됨 (이 가이드는 괜찮을 것입니다 https://www.howtoforge.com/tutorial/perfect-server-debian-8-4-jessie-apache-bind-dovecot-ispconfig-3-1/)
- 사이트를 가리키도록 DNS가 올바르게 구성됨 (우리 테스트에서는 course.servisys.it를 예로 사용합니다), 이는 Let’s Encrypt의 올바른 구성을 위해 필요합니다.
1. DNS 설정하기
우리의 예에서 우리는 course.servisys.it 도메인을 사용할 것이라고 했으므로, Moodle 사이트를 열 때 https://course.servisys.it를 사용할 것입니다. DNS를 구성하려면 ISPConfig의 DNS 탭으로 이동하여 DNS를 아래 이미지처럼 편집하십시오:

A 레코드 유형을 선택하는 것을 주의하십시오. 이는 매우 중요한 단계입니다. A 레코드는 Let’s Encrypt가 SSL 인증서를 생성하는 데 사용됩니다.
외부 제공업체에서 DNS를 관리하는 경우, 거기에서도 동일한 레코드 유형을 생성해야 합니다.
2. 웹사이트 만들기
이제 ISPConfig의 웹사이트 탭으로 이동하여 이전에 설정한 DNS와 같은 이름의 새 웹사이트를 만듭니다. 다음 옵션을 편집하십시오:

자동 서브도메인: 제 경우에는 www.에서 none으로 변경했습니다. 제 도메인은 course.servisys.it입니다. www로 설정하면 Let’s Encrypt 자동화가 www.course.servisys.it에 대한 인증서를 생성하려고 시도하고 실패할 것입니다. 이 옵션에 주의하십시오.
SSL: SSL을 위해 활성화합니다.
Let’s Encrypt: 인증서를 생성하고 싶습니다.
PHP: Fastcgi가 저에게 잘 작동합니다.
이제 저장을 클릭하고 인증서가 올바르게 발급될 때까지 기다립니다.
몇 분 후에 웹사이트를 열어보십시오. 제 경우에는 https://course.servisys.it입니다. 모든 것이 괜찮다면 녹색 바를 보게 될 것입니다!

3. 데이터베이스 생성
Moodle과 함께 사용할 데이터베이스 사용자 및 데이터베이스를 생성합시다.
사이트 탭으로 이동한 다음 데이터베이스 사용자 > 새 사용자로 이동합니다.
연관된 클라이언트를 선택하고 이름과 비밀번호를 선택합니다. 다음과 같이:

다음을 기록해 두십시오:
- 데이터베이스 사용자
- 비밀번호
사이트 탭으로 돌아가서 이제 데이터베이스를 선택한 다음 새 데이터베이스 추가를 클릭합니다. 사이트를 선택하고 (courses.serverisy.it), 데이터베이스 이름을 선택하고 이전에 생성한 사용자를 선택한 다음 저장을 클릭합니다. 아래 스크린샷과 비슷한 내용입니다:

4. MySql 구성 수정
기본 mysql 구성은 Moodle과 함께 작동하기 위해 약간의 수정이 필요합니다. 다음 파일을 편집해야 합니다:
nano /etc/mysql/my.cnf그리고 시작 부분에 빨간 줄을 추가합니다:
[client]
port = 3306
socket = /var/run/mysqld/mysqld.sock
default-character-set = utf8mb4같은 파일에서 조금 내려가서 [mysqldump] 문이 시작되기 전에 다시 빨간 줄을 추가합니다:
#Moodle - Matteo
innodb_file_format = Barracuda
innodb_file_per_table = 1
innodb_large_prefix
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
[mysqldump]
quick
quote-names
max_allowed_packet = 16M이러한 수정은 Moodle을 설치하기 위한 전제 조건이기 때문에 필요합니다. 설치 중에 진행할 수 없게 됩니다.
그 후, MySql을 다음으로 재시작합니다:
/etc/init.d/mysql restart5. Moodle 설치 준비
이제 Moodle 설치를 준비할 준비가 되었습니다. FTP보다 명령줄에서 하는 것이 더 빠르기 때문에 그렇게 하겠습니다 :)
이 페이지로 이동하여 귀하의 필요에 맞는 설치를 선택하십시오. 생산 환경에서는 안정적인 버전을 사용하는 것이 좋습니다. 우리가 작성하는 시점에서, 그것은 3.2.2입니다.
따라서 명령줄에서 귀하의 사이트의 웹 디렉토리로 이동합니다. 제 경우에는 다음 명령어입니다:
cd /var/www/course.servisys.it/web rm index.htmlwget https://download.moodle.org/download.php/direct/stable32/moodle-3.2.2.tgztar -zxvf moodle-3.2.2.tgzcp -pr moodle/* ./cp -pr moodle/.* ./cd 명령어를 사용할 때, 당연히 귀하의 사이트 이름으로 변경하십시오.
기본 index.html 페이지를 제거했습니다. 첫 번째 페이지로 제공될 페이지는 index.php가 되기를 원합니다.
그 후, 파일 소유권을 수정하여 사용자 및 그룹에 맞게 조정해야 합니다. 어떤 것이 올바른지 알기 위해 간단히 다음을 실행하십시오:
ls -al많은 파일이 표시되어야 하며, 일부는 사용자 web client를 포함해야 합니다. 제 경우에는:
drwxr-xr-x 18 1005 1005 4096 mar 11 22:16 report
drwxr-xr-x 24 1005 1005 4096 mar 11 22:16 repository
-rwxr-xr-- 1 web42 client1 14 apr 13 17:25 robots.txt
drwxr-xr-x 2 1005 1005 4096 mar 11 22:16 rss
drwxr-xr-x 7 1005 1005 4096 mar 11 22:16 search
drwxr-xr-x 2 web42 client1 4096 apr 13 17:25 stats
drwxr-xr-x 5 1005 1005 4096 mar 11 22:16 tag
-rw-r--r-- 1 1005 1005 615 mar 11 22:16 tags.txt
drwxr-xr-x 6 1005 1005 4096 mar 11 22:16 theme보시다시피, 제 사용자는 web42이고 제 그룹은 client1입니다. 따라서 이제 권한을 수정합니다:
chown -R web42:client1 *chown -R web42:client1 .*그리고 디렉토리의 권한을 다시 수정합니다:
chown root:root stats/ error/그런 다음 공개적으로 접근할 수 없는 moodledata 디렉토리를 생성합니다. 그렇게 하려면 개인 디렉토리에 생성하십시오.
mkdir ../private/moodledatachown -R web42:client1 ../private/moodledata6. Moodle 웹 설치
이제 마지막 설치 단계를 시작할 수 있습니다. 브라우저를 열고 웹사이트의 URL을 열면 다음과 유사한 페이지가 표시되어야 합니다:

언어를 선택하고 다음을 클릭하십시오.

Moodle의 기본 데이터 디렉토리는 /var/www/clients/client1/web42/moodledata로 표시되지만, 우리의 디렉토리는 개인 폴더에 있으므로 경로를 변경하여 개인 폴더의 moodle 폴더를 사용하도록 합니다: /var/www/clients/client1/web42/private/moodledata
그런 다음 데이터베이스 유형을 선택합니다. 제 경우에는 MySql입니다.

그런 다음 MySql 데이터를 입력합니다.

데이터베이스 호스트: localhost
데이터베이스 이름: c1_moodle
데이터베이스 사용자: c1_moodle
데이터베이스 비밀번호: 데이터베이스 사용자 생성 중 선택한 비밀번호
테이블 접두사: mdl_
데이터베이스 포트:
유닉스 소켓:
이제 클릭하고 기다립니다. 몇 초 후에 조건이 표시되며, 이를 수락해야 합니다.

그 후, Moodle은 모든 것이 잘 작동하는지 테스트하기 위해 몇 가지 시스템 검사를 수행합니다.
모든 것이 지금은 녹색이어야 합니다!!!

계속 클릭하면 다른 검사가 나타납니다….

계속 클릭하고 관리자 사용자 데이터(이름, 성, 사용자 비밀번호 등)를 입력합니다.

새로운 학습 및 테스트 플랫폼의 데이터를 입력해야 합니다 :)

강의를 즐기세요!
새 게시물을 받은 편지함에서 받기
스팸은 없습니다. 언제든지 구독 해지 가능합니다.