CMS 설치 · 5 min read · Nov 09, 2025

Debian 9에 Pagekit CMS 설치하는 방법

Pagekit은 Symfony 구성 요소와 Vue.js로 구축된 현대적이고 직관적이며 모듈화되고 유연한 오픈 소스(MIT 라이센스) CMS입니다. 아름다운 웹사이트를 만들기 위한 도구를 제공합니다. 풍부한 테마 및 플러그인 생태계를 가지고 있습니다.

이 튜토리얼에서는 NGINX를 웹 서버로, MariaDB를 데이터베이스 서버로 사용하여 Debian 9(stretch) 운영 체제에서 Pagekit CMS 설치 프로세스를 안내합니다. 선택적으로 acme.sh 클라이언트와 Let’s Encrypt 인증 기관을 사용하여 SSL 지원을 추가하여 전송 계층을 보호할 수 있습니다.

요구 사항

Pagekit을 설치하려면 서버가 다음 요구 사항을 충족하는지 확인하십시오:

  • Apache 버전 2.2 이상 또는 NGINX 웹 서버.
  • MySQL 버전 5.1 이상 또는 SQLite 3.
  • PHP 버전 5.5.9 이상.
  • 필요한 PHP 확장: JSON, Session, ctype, Tokenizer, SimpleXML, DOM, mbstring, PCRE 8.0+, ZIP 및 MySQL 또는 SQLite 드라이버가 포함된 PDO.
  • 선택적 PHP 확장: cURL, iconv 및 XML Parser, APC 또는 XCache 캐싱.

전제 조건

  • Debian 9(stretch)에서 실행되는 시스템.
  • sudo 권한이 있는 비루트 사용자.

초기 단계

Debian 시스템 버전을 확인하십시오:

lsb_release -ds  
# Debian GNU/Linux 9.7 (stretch)

시간대를 설정하십시오:

dpkg-reconfigure tzdata

운영 체제 패키지(소프트웨어)를 업데이트하십시오. 이는 운영 체제의 기본 소프트웨어 패키지에 대한 최신 업데이트 및 보안 수정을 보장하는 중요한 첫 번째 단계입니다:

apt update && apt upgrade -y

Debian 운영 체제의 기본 관리를 위해 필요한 몇 가지 필수 패키지를 설치하십시오:

apt install -y curl wget vim git sudo unzip socat bash-completion dirmngr apt-transport-https

1단계 - PHP 및 필요한 PHP 확장 설치

Pagekit CMS 플랫폼은 PHP 버전 7.0 이상이 필요합니다. 기본적으로 Debian 9에는 기본 소프트웨어 저장소에 PHP 버전 7.0이 포함되어 있어 October CMS에 적합합니다.

PHP 7.0 및 필요한 PHP 확장을 다운로드하고 설치하십시오:

sudo apt install -y php7.0 php7.0-cli php7.0-fpm php7.0-common php7.0-mbstring php7.0-zip php7.0-mysql php7.0-sqlite3 php7.0-curl php7.0-xml

PHP에 컴파일된 모듈을 표시하려면 다음을 실행할 수 있습니다:

php -m  
  
ctype  
curl  
exif  
fileinfo  
. . .  
. . .

PHP 버전을 확인하십시오:

php --version  
# PHP 7.0.33-0+deb9u1 (cli) (built: Dec 7 2018 11:36:49) ( NTS )  
# Copyright (c) 1997-2017 The PHP Group  
# Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies  
#     with Zend OPcache v7.0.33-0+deb9u1, Copyright (c) 1999-2017, by Zend Technologies

PHP-FPM 서비스는 Debian 9 시스템에서 자동으로 시작되고 재부팅 시 활성화되므로 수동으로 시작하고 활성화할 필요가 없습니다. 다음 단계인 데이터베이스 설치 및 설정으로 넘어갈 수 있습니다.

2단계 - MariaDB 설치 및 Pagekit용 데이터베이스 생성

Pagekit CMS는 MySQL, MariaDB 및 SQLite 데이터베이스를 지원합니다. Debian 팀은 Debian 9(stretch)에서 기본 데이터베이스로 MySQL을 MariaDB로 교체했으므로 이 튜토리얼에서는 MariaDB를 데이터베이스 서버로 사용합니다. 원래 MySQL을 설치하려면 Oracle에서 유지 관리하는 공식 MySQL 저장소를 추가하고 사용할 수 있습니다.

공식 MariaDB 저장소에서 MariaDB 버전 10.2 데이터베이스 서버를 설치하십시오:

sudo apt install -y software-properties-common dirmngr apt-transport-https  
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xF1656F24C74CD1D8  
sudo add-apt-repository 'deb [arch=amd64,i386,ppc64el] https://mirrors.nxthost.com/mariadb/repo/10.2/debian stretch main'  
sudo apt update  
sudo apt install -y mariadb-server  

참고: Y 루트 사용자 비밀번호를 입력하라는 메시지가 표시됩니다. 강력한 비밀번호를 입력하고 계속하십시오.

MariaDB 버전을 확인하십시오:

mysql --version  
# mysql  Ver 15.1 Distrib 10.2.22-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2

mysql_secure_installation 스크립트를 실행하여 MariaDB 보안을 개선하고 MariaDB root 사용자 비밀번호를 설정하십시오:

sudo mysql_secure_installation

각 질문에 답하십시오:

Enter current password for root (enter for none): Press Enter  
Set root password? [Y/n] Y  
New password: your_secure_password  
Re-enter new password: your_secure_password  
Remove anonymous users? [Y/n] Y  
Disallow root login remotely? [Y/n] Y  
Remove test database and access to it? [Y/n] Y  
Reload privilege tables now? [Y/n] Y

루트 사용자로 MariaDB에 로그인하십시오:

sudo mysql -u root -p  
# 비밀번호 입력

Pagekit 설치에 사용할 MariaDB 데이터베이스와 사용자를 생성하고 자격 증명을 기억하십시오:

CREATE DATABASE dbname;  
GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';  
FLUSH PRIVILEGES;

MariaDB 셸에서 나가십시오:

quit

3단계 - Acme.sh 클라이언트 설치 및 Let’s Encrypt 인증서 받기(선택 사항)

HTTPS로 웹사이트를 보호하는 것은 필수가 아니지만 사이트 트래픽을 보호하는 좋은 방법입니다. Let’s Encrypt에서 SSL 인증서를 받기 위해 Acme.sh 클라이언트를 사용할 것입니다. Acme.sh는 종속성이 없는 Let’s Encrypt에서 SSL 인증서를 받기 위한 순수 UNIX 셸 소프트웨어입니다.

acme.sh를 다운로드하고 설치하십시오:

sudo su - root  
git clone https://github.com/Neilpang/acme.sh.git  
cd acme.sh   
./acme.sh --install --accountemail [email protected]  
source ~/.bashrc  
cd ~

acme.sh 버전을 확인하십시오:

acme.sh --version  
# v2.8.1

도메인/호스트 이름에 대한 RSAECC/ECDSA 인증서를 받으십시오:

# RSA 2048  
acme.sh --issue --standalone -d example.com --keylength 2048  
# ECDSA  
acme.sh --issue --standalone -d example.com --keylength ec-256

테스트용 가짜 인증서를 원하시면 위 명령에 --staging 플래그를 추가할 수 있습니다.

발급된 인증서를 나열하려면 다음을 실행할 수 있습니다:

acme.sh --list

인증서를 저장할 디렉토리를 생성하십시오. /etc/letsencrypt 디렉토리를 사용할 것입니다.

mkdir -p /etc/letsencrypt/example.com  
sudo mkdir -p /etc/letsencrypt/example.com_ecc

인증서를 /etc/letsencrypt 디렉토리에 설치/복사하십시오.

# RSA  
acme.sh --install-cert -d example.com \   
        --cert-file /etc/letsencrypt/example.com/cert.pem \  
        --key-file /etc/letsencrypt/example.com/private.key \  
        --fullchain-file /etc/letsencrypt/example.com/fullchain.pem \  
        --reloadcmd "sudo systemctl reload nginx.service"  
  
# ECC/ECDSA  
acme.sh --install-cert -d example.com --ecc \  
        --cert-file /etc/letsencrypt/example.com_ecc/cert.pem \  
        --key-file /etc/letsencrypt/example.com_ecc/private.key \  
        --fullchain-file /etc/letsencrypt/example.com_ecc/fullchain.pem \  
        --reloadcmd "sudo systemctl reload nginx.service"

위 명령을 실행한 후 인증서는 다음 위치에 있습니다:

  • RSA: /etc/letsencrypt /example.com 디렉토리.
  • ECC/ECDSA: /etc/letsencrypt /example.com_ecc 디렉토리.

모든 인증서는 60일마다 자동으로 갱신됩니다.

인증서를 받은 후 루트 사용자에서 나가고 일반 sudo 사용자로 돌아가십시오:

exit

4단계 - NGINX 설치 및 Pagekit을 위한 NGINX 구성

NGINX 웹 서버를 설치하십시오:

sudo apt install -y nginx

NGINX 버전을 확인하십시오:

sudo nginx -v  
# nginx version: nginx/1.10.3

다음 명령을 실행하여 Pagekit을 위한 NGINX를 구성하십시오:

sudo vim /etc/nginx/sites-available/pagekit.conf  

다음 구성으로 파일을 채우십시오:

server {  
    listen [::]:443 ssl http2;  
    listen 443 ssl http2;  
    listen [::]:80;  
    listen 80;  
    
    server_name example.com;  
    
    index index.php index.html;  
    root /var/www/pagekit;  

    ssl_certificate /etc/letsencrypt/example.com/fullchain.pem;  
    ssl_certificate_key /etc/letsencrypt/example.com/private.key;  
    ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.pem;  
    ssl_certificate_key /etc/letsencrypt/example.com_ecc/private.key;  

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }  
  
    location ~ \.php$ {  
        include snippets/fastcgi-php.conf;  
        fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;  
    }
    
}

pagekit.conf 구성을 활성화하려면 파일을 sites-enabled 디렉토리에 링크하십시오.

sudo ln -s /etc/nginx/sites-available/pagekit.conf /etc/nginx/sites-enabled

구문 오류에 대한 NGINX 구성을 확인하십시오:

sudo nginx -t

NGINX 서비스를 다시 로드하십시오:

sudo systemctl reload nginx.service

5단계 - Pagekit CMS 다운로드 및 설치

Pagekit이 있어야 할 문서 루트 디렉토리를 생성하십시오:

sudo mkdir -p /var/www/pagekit  

/var/www/pagekit 디렉토리의 소유권을 [your_user]:로 변경하십시오:

sudo chown -R [your_user]:[your_user] /var/www/pagekit

문서 루트로 이동하십시오:

cd /var/www/pagekit

wget를 통해 Pagekit CMS의 최신 안정 버전을 다운로드하십시오:

wget https://github.com/pagekit/pagekit/releases/download/1.0.16/pagekit-1.0.16.zip

Pagekit CMS 콘텐츠를 압축 해제하고 다운로드한 .zip 파일을 제거하십시오.

unzip pagekit-1.0.16.zip  
rm pagekit-1.0.16.zip

/var/www/pagekit 디렉토리의 소유권을 www-data로 변경하십시오.

sudo chown -R www-data:www-data /var/www/pagekit

6단계 - Pagekit 설정 완료

웹 브라우저에서 사이트를 열면 다음 페이지가 표시되어야 합니다:

Pagekit 웹 설치 프로그램

오른쪽 화살표 아이콘을 클릭하여 설치를 진행하십시오. 언어를 선택하고

Share: X/Twitter LinkedIn

새 게시물을 받은 편지함에서 받기

스팸은 없습니다. 언제든지 구독 해지 가능합니다.