TYPO3 설치 · 9 min read · Sep 26, 2025
Rocky Linux 9에 TYPO3 CMS 설치하는 방법

TYPO3는 무료이자 오픈 소스인 엔터프라이즈급 콘텐츠 관리 시스템입니다. 다중 사이트 지원, 다국어 설치, 강력한 보안 구현, 빠른 속도 등 여러 엔터프라이즈 수준의 기능을 제공합니다. 어디서나 실행할 수 있습니다.
TYPO3 CMS를 사용하면 유연하고 신뢰할 수 있는 웹사이트를 구축할 수 있습니다. TYPO3 CMS는 활기찬 전문 커뮤니티가 지원하는 백엔드입니다. 설계상 TYPO3 CMS는 플러그형 콘텐츠 관리 시스템으로 적응 가능하고 분리된 아키텍처를 가지고 있습니다.
이 가이드에서는 Rocky Linux 9 서버에 TYPO3 CMS - 엔터프라이즈급 콘텐츠 관리 시스템 -를 설치합니다. httpd 웹 서버, MariaDB 데이터베이스 및 최신 버전의 PHP 8.0으로 TYPO3 CMS를 설정합니다. 이 가이드에는 Certbot 및 Letsencrypt를 통한 HTTPS 구현이 포함되어 있으며, 이는 TYPO3 배포를 보호하는 데 사용됩니다.
필수 조건
먼저, 이 가이드를 완료하기 위해 다음 요구 사항이 필요합니다:
- Rocky Linux 9 서버 - 이 예제에서는 호스트 이름이 ‘TYPO3-Roc k’인 Rocky Linux를 사용합니다.
- sudo/root 권한이 있는 비루트 사용자.
- 허용 모드에서 실행되는 SELinux.
- 서버 IP 주소를 가리키는 도메인 이름 - 이 예제에서는 도메인 ‘howtoforge.local‘을 사용합니다.
그게 전부입니다. 모든 요구 사항이 준비되면 이제 설치를 시작할 수 있습니다.
httpd 웹 서버 설치
TYPO3는 PHP로 작성된 엔터프라이즈급 CMS(콘텐츠 관리 시스템) 및 웹 애플리케이션입니다. 다양한 유형의 웹 서버에서 실행할 수 있습니다. 이 예제에서는 httpd 웹 서버와 함께 TYPO3 CMS를 설치하고 실행합니다.
패키지를 설치하기 전에 다음 dnf 명령을 입력하여 EPEL(Enterprise Linux의 추가 패키지) 저장소를 시스템에 추가합니다. 이 저장소는 나중에 추가 패키지를 설치하는 데 필요합니다.
sudo dnf install epel-release이제 다음 dnf 명령을 실행하여 httpd 웹 서버를 설치합니다. 프롬프트가 표시되면 y를 입력하여 확인하고 ENTER를 눌러 진행합니다.
sudo dnf install httpd
httpd가 설치되면 다음 systemctl 명령 유틸리티를 입력하여 httpd 웹 서버를 시작하고 활성화합니다. 이렇게 하면 httpd 웹 서버가 실행되고 시스템 시작 시 자동으로 시작되도록 활성화됩니다.
sudo systemctl start httpd
sudo systemctl enable httpd다음 systemctl 명령을 사용하여 httpd 웹 서버 상태를 확인합니다. ‘ enabled ‘와 같은 출력을 받아야 하며, 이는 httpd 서비스가 부팅 시 자동으로 실행됨을 확인합니다. 그리고 httpd 웹 서버의 상태가 실행 중입니다.
sudo systemctl is-enabled httpd
sudo systemctl status httpd
httpd 설치에 접근하기 전에 Rocky Linux 시스템에서 firewalld를 통해 HTTP 및 HTTPS 프로토콜을 열어야 합니다.
다음 firewall-cmd 명령을 입력하여 firewalld에 HTTP 및 HTTPS 포트를 추가합니다. 그런 다음 firewalld를 다시 로드하여 변경 사항을 적용합니다.
sudo firewall-cmd --add-service={http,https} --permanent
sudo firewall-cmd --reload출력 ‘ success ‘는 작업의 성공을 확인합니다. 이제 다음 명령을 통해 firewalld 규칙 목록을 확인할 수 있습니다.
sudo firewall-cmd --list-all‘서비스’ 섹션에서 firewalld에 추가된 HTTP 및 HTTPS 프로토콜을 확인할 수 있어야 합니다.

이제 httpd 웹 서버를 설치하고 firewalld를 구성했습니다. 다음으로 MariaDB 데이터베이스 서버 설치를 시작합니다.
MariaDB 서버 설치
이 섹션에서는 MariaDB 데이터베이스 서버를 설치하고 ‘mariadb-secure-installation’ 명령을 사용하여 배포를 자동으로 보호합니다.
시작하려면 다음 dnf 명령을 입력하여 MariaDB 데이터베이스 서버를 설치합니다.
sudo dnf install mariadb-server프롬프트가 표시되면 y를 입력하고 ENTER를 눌러 진행합니다.

이제 다음 systemctl 명령 유틸리티를 사용하여 MariaDB 서비스를 시작하고 활성화합니다. 이제 MariaDB 서비스가 실행 중이며 활성화되어 있어야 하며, 이는 부팅 시 MariaDB 서비스가 자동으로 시작됨을 의미합니다.
sudo systemctl start mariadb
sudo systemctl enable mariadb다음 systemctl 명령을 입력하여 MariaDB 서비스를 확인하고 서비스가 실행 중이며 활성화되어 있는지 확인합니다.
sudo systemctl is-enabled mariadb
sudo systemctl status mariadb출력 ‘ enabled ‘는 MariaDB 서버가 활성화되어 있으며 시스템 시작 시 자동으로 실행됨을 확인합니다. 출력 ‘ active (running) ‘는 MariaDB 서버가 실행 중임을 확인합니다.

마지막으로 다음 ‘mariadb-secure-installation’ 명령을 실행하여 MariaDB 배포를 보호합니다.
sudo mariadb-secure-installation이제 다음 구성으로 질문을 받게 됩니다 - y로 확인하거나 n으로 아니오를 입력할 수 있습니다.
- 인증을 unix_socket으로 변경하시겠습니까? n을 입력합니다.
- MariaDB 루트 비밀번호를 변경하시겠습니까? y를 입력하여 확인하고, MariaDB 서버의 새 비밀번호를 입력한 후 비밀번호를 반복합니다.
- 원격 루트 로그인을 비활성화하시겠습니까? y를 입력하여 확인합니다 - 루트 사용자는 원격으로 연결할 수 없어야 합니다.
- 익명 사용자를 제거하시겠습니까? y를 입력하여 확인합니다.
- 기본 데이터베이스 ‘test’를 제거하시겠습니까? y를 입력하여 확인하고 테스트 데이터베이스를 제거합니다.
- 마지막으로, 테이블 권한을 다시 로드하고 새로운 변경 사항을 적용하기 위해 y를 입력합니다.
MariaDB 배포가 완료되면 TYPO3 CMS 배포를 위한 새 데이터베이스와 사용자를 생성할 준비가 되었습니다.
MariaDB 데이터베이스 및 사용자 생성
이 섹션에서는 TYPO3 CMS 설치에 사용할 새 MariaDB 데이터베이스와 사용자를 생성합니다.
먼저, 아래의 ‘mariadb‘ 명령을 통해 MariaDB 셸에 로그인합니다. MariaDB 루트 비밀번호를 입력하고 ENTER를 누릅니다.
sudo mariadb -u root -p이제 다음 MariaDB 쿼리를 실행하여 새 데이터베이스와 사용자를 생성합니다. 이 예제에서는 사용자 ‘typo3‘와 함께 새 데이터베이스 ‘typo3db‘를 생성합니다. 다음 쿼리에서 비밀번호를 변경하고 데이터베이스의 기본 문자 집합으로 ‘utf8mb4‘를 사용해야 합니다.
CREATE DATABASE typo3db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
GRANT ALL PRIVILEGES ON typo3db.* to typo3@localhost IDENTIFIED BY 'typo3password';
FLUSH PRIVILEGES;
다음으로, 다음 쿼리를 사용하여 MariaDB에서 사용 가능한 사용자 목록을 확인합니다. 새 사용자 ‘typo3‘가 MariaDB 서버에 추가되고 사용 가능해야 합니다.
SELECT USER,host FROM mysql.user;
마지막으로, 다음 쿼리를 사용하여 MariaDB 사용자 ‘typo3‘의 권한을 확인합니다. 사용자 ‘typo3‘가 데이터베이스 ‘typo3db‘에 대한 모든 권한을 가지고 있어야 합니다.
SHOW GRANTS FOR typo3@localhost;
이제 quit을 입력하여 MariaDB 셸에서 로그아웃합니다.
이로써 TYPO3 CMS 설치를 위한 MariaDB 데이터베이스 구성을 완료했습니다. 다음 단계로 PHP 설치를 시작합니다.
PHP 8.0 설치
TYPO3 CMS는 주로 PHP로 작성되며, 이 글을 작성할 당시 TYPO3 CMS의 최신 버전은 PHP 8.x 패키지를 지원합니다. 이 섹션에서는 Rocky Linux 9 저장소에서 기본적으로 제공되는 PHP 8.0을 설치합니다.
다음 dnf 명령을 입력하여 PHP 8.0 패키지를 설치합니다. 프롬프트가 표시되면 y를 입력하여 확인하고 ENTER를 눌러 진행합니다.
sudo dnf install php php-common php-mysqlnd php-gd php-curl php-json php-intl php-bcmath php-zip php-apcu php-mbstring php-fileinfo php-xml php-soap
PHP가 설치되면 다음 nano 편집기 명령을 사용하여 구성 파일 ‘/etc/php.ini’를 엽니다.
sudo nano /etc/php.ini다음 줄로 기본 php.ini 구성을 변경합니다.
memory_limit = 512M
max_execution_time = 300
max_input_vars = 2000
date.timezone = Europe/Stockholm
post_max_size = 30M
upload_max_filesize = 30M완료되면 ‘ /etc/php.ini’ 파일을 저장하고 종료합니다.
이제 다음 systemctl 명령 유틸리티를 실행하여 httpd 서비스를 재시작하고 ‘php.ini’ 파일에 대해 수행한 새로운 변경 사항을 적용합니다.
sudo systemctl restart httpd다음 ‘php’ 명령을 통해 현재 PHP 버전을 확인할 수도 있습니다. PHP 8.0이 시스템에 설치되었다는 출력을 받아야 합니다.
php --version
이제 PHP 8.0 패키지를 설치하고 php.ini 파일을 구성했습니다. 다음 단계에서는 TYPO3 CMS의 PHP 종속성을 설치하는 데 사용될 Composer - 종속성 관리자를 설치합니다.
Composer 설치
Composer는 애플리케이션 수준의 PHP 종속성 관리자입니다. 공식 설치 스크립트를 통해 수동으로 설치하거나 EPEL 저장소를 통해 설치할 수 있습니다.
다음 dnf 명령을 입력하여 EPEL 저장소에서 Composer를 설치합니다. 프롬프트가 표시되면 y를 입력하여 확인하고 ENTER를 눌러 진행합니다.
sudo dnf install composer
Composer가 설치되면 다음 명령을 입력하여 Composer 버전을 확인합니다.
sudo -u apache composer -V아래 출력은 Composer v2.5.1이 Rocky Linux 시스템에 설치되었음을 확인합니다.

Composer가 설치되었으므로 다음 단계는 Letsencrypt에서 SSL/TLS 인증서를 생성하는 데 사용될 Certbot을 설치하는 것입니다.
Certbot 설치
Certbot은 Letsencrypt에서 SSL/TLS 인증서를 생성하기 위한 명령줄 도구입니다. RHEL 기반 배포판의 경우 EPEL 저장소에서 Certbot을 설치할 수 있습니다.
다음 dnf 명령을 입력하여 ‘ certbot ‘ 및 ‘ python3-certbot-apache ‘ 패키지를 시스템에 설치합니다. 프롬프트가 표시되면 y를 입력하여 확인하고 ENTER를 눌러 진행합니다.
sudo dnf install certbot python3-certbot-apache
설치가 완료되면 다음 명령을 실행하여 설치를 확인합니다.
which certbot
certbot --version‘ certbot ‘ 명령의 이진 경로는 ‘ /bin/certbot ‘에 있습니다. 설치한 certbot의 버전은 v2.1.0입니다.
Composer와 certbot이 설치되었으므로 이제 TYPO3 CMS를 설치할 준비가 되었습니다.
TYPO3 CMS 소스 코드 다운로드
이 섹션에서는 대상 설치 디렉토리를 설정하고 TYPO3 CMS 소스 코드를 다운로드합니다.
다음 명령을 입력하여 새 디렉토리 ‘/var/www/typo3 ‘을 생성합니다. 이는 TYPO3 CMS의 루트 설치 디렉토리로 사용됩니다.
mkdir -p /var/www/typo3‘ /var/www/typo3’ 디렉토리의 소유권을 사용자 및 그룹 ‘apache‘로 변경합니다. 또한 이 디렉토리의 소유자가 읽고 쓸 수 있도록 해야 합니다. 이렇게 하면 기본적으로 ‘ apache ‘ 사용자로 실행되는 httpd 웹 서버에 TYPO3 CMS 소스 코드에 대한 액세스 권한을 부여합니다.
sudo chown -R apache:apache /var/www/typo3
sudo chmod u+rw /var/www/typo3이제 ‘/var/www/typo3 ‘ 디렉토리로 이동하여 다음 composer 명령을 사용하여 TYPO3 CMS 소스 코드를 다운로드합니다.
cd /var/www/typo3
sudo -u apache composer create-project typo3/cms-base-distribution:^11 .출력:

TYPO3 CMS 소스 코드가 다운로드되면 다음 명령을 입력하여 ‘/var/www/typo3’ 디렉토리의 파일 및 디렉토리 목록을 확인합니다.
ls -lah /var/www/typo3
아래 출력은 TYPO3 CMS 소스 코드가 다운로드되었음을 확인합니다. 또한 TYPO3 CMS 소스 코드의 소유권이 사용자 및 그룹 ‘apache‘인지 확인해야 합니다.

이제 TYPO3 CMS 소스 코드를 다운로드했으므로 다음 단계는 TYPO3 CMS를 실행하는 데 사용될 httpd 가상 호스트 구성을 생성하고 설정하는 것입니다.
httpd 가상 호스트 설정
이 섹션에서는 TYPO3 CMS를 실행하는 데 사용될 새 httpd 가상 호스트 구성을 생성합니다. 또한 Certbot 명령을 통해 Letsencrypt에서 SSL/TLS 인증서를 생성합니다.
시작하기 전에 도메인 이름이 서버 IP 주소를 가리키고 있는지, Letsencrypt에 등록하는 데 사용할 이메일 주소가 있는지 확인하십시오.
다음 nano 편집기 명령을 사용하여 새 httpd 가상 호스트 구성 파일 ‘/etc/httpd/conf.d/typo3.conf’를 생성합니다.
sudo nano /etc/httpd/conf.d/typo3.conf파일에 다음 줄을 추가하고 TYPO3 CMS 설치의 도메인 이름을 변경해야 합니다.
ServerAdmin [email protected]
DocumentRoot /var/www/typo3/public
ServerName howtoforge.local
Protocols h2 http/1.1
Options FollowSymlinks
AllowOverride All
Require all granted
ErrorLog /var/log/httpd/typo3-error.log
CustomLog /var/log/httpd/typo3-access.log combined
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*) index.php [PT,L]
완료되면 ‘/etc/httpd/conf.d/typo3.conf’ 파일을 저장하고 종료합니다.
다음으로, 다음 명령을 실행하여 httpd 구성이 올바른지 확인합니다. 성공하면 ‘ syntax OK ‘와 같은 출력을 받아야 합니다.
sudo apachectl configtest이제 다음 systemctl 명령 유틸리티를 입력하여 httpd 서비스를 재시작하고 변경 사항을 적용합니다.
sudo systemctl restart httpd이로써 TYPO3 CMS를 위한 httpd 가상 호스트 구성을 완료했습니다.
이제 다음 certbot 명령을 입력하여 TYPO3 CMS 도메인 이름에 대한 SSL/TLS 인증서를 생성합니다. 또한 다음 명령에서 도메인 이름과 이메일 주소를 변경해야 합니다.
sudo certbot --apache --agree-tos --no-eff-email --redirect --hsts --staple-ocsp --email [email protected] -d howtoforge.local완료되면 SSL/TLS 인증서는 ‘/etc/letsencrypt/live/yourdomain.com/ ‘ 디렉토리에 저장됩니다. 또한 httpd 가상 호스트 구성은 SSL 인증서와 HTTP에서 HTTPS로의 자동 리디렉션으로 자동으로 구성됩니다.
이로써 TYPO3 CMS를 위한 httpd 웹 서버 구성을 완료했습니다. TYPO3 CMS 도메인 이름에 대한 SSL/TLS 인증서도 생성했습니다. 이제 TYPO3 CMS 설치에 접근할 수 있습니다.
TYPO3 설치 시작
TYPO3 CMS 설치를 시작하기 전에 ‘/var/www/typo3/public/‘ 디렉토리에 새 빈 파일 ‘FIRST_INSTALL‘을 생성해야 합니다. 이는 이 서버에서 TYPO3 CMS를 처음 설치하고 있음을 나타냅니다.
다음 명령을 입력하여 ‘/var/www/typo3/public/‘ 디렉토리에 새 파일 ‘FIRST_INSTALL‘을 생성합니다.
sudo -u apache touch /var/www/typo3/public/FIRST_INSTALL이제 웹 브라우저를 열고 TYPO3 CMS 설치의 도메인 이름(예: https://howtoforge.local/)을 입력합니다.
TYPO3 CMS 설치 프로그램은 첫 페이지에서 시스템 환경을 확인하고 검증합니다. ‘ 문제가 감지되지 않았습니다. 설치를 계속합니다 ‘ 버튼이 표시되면 시스템이 TYPO3 CMS 설치를 위한 준비가 완료된 것입니다.

이제 TYPO3 CMS 설치에 사용할 MariaDB 사용자 정보를 입력합니다.

‘ 기존의 빈 데이터베이스 사용 ‘ 옵션을 선택하고 드롭다운 메뉴에서 데이터베이스 ‘typo3db‘를 선택합니다. 그런 다음 계속을 클릭합니다.

이제 TYPO3 CMS 관리자 사용자의 사용자 이름, 이메일 주소 및 비밀번호를 입력합니다. 강력한 비밀번호를 사용하는 것이 좋습니다.
계속 진행하려면 계속을 클릭합니다.

완료되면 ‘ 설치 완료 ‘와 같은 출력을 받아야 합니다.
이제 ‘ 백엔드로 바로 가기 ‘ 옵션을 선택하고 ‘ TYPO3 백엔드 열기 ‘ 버튼을 클릭하여 계속 진행합니다.

그러면 TYPO3 CMS 로그인 페이지로 리디렉션됩니다. 관리자 사용자와 비밀번호를 입력한 후 로그인을 클릭합니다.

성공하면 TYPO3 CMS 관리 대시보드를 볼 수 있습니다.

사용자 프로필 왼쪽에 있는 ‘응용 프로그램 정보’ 메뉴를 클릭하여 TYPO3 CMS 설치에 사용 중인 소프트웨어의 세부 정보를 확인할 수 있습니다.
다음 스크린샷에서와 유사한 세부 정보를 확인할 수 있어야 합니다 - 이 글을 작성할 당시, httpd/Apache 웹 서버, PHP 8.0 및 MariaDB 데이터베이스 서버와 함께 TYPO3 CMS v11.5를 설치했습니다.

결론
이 가이드에서는 Rocky Linux 9 서버에 엔터프라이즈급 콘텐츠 관리 시스템인 TYPO3 CMS를 설치했습니다. httpd 웹 서버, MariaDB 데이터베이스 서버 및 PHP 8.0으로 TYPO3 CMS를 설치했습니다.
또한 Letsencrypt에서 SSL 인증서를 생성하기 위해 Certbot을 설치했습니다. 그리고 SSL/TLS 인증서를 통해 TYPO3 CMS 설치를 보호하고 Certbot을 통해 HTTP에서 HTTPS로의 자동 리디렉션을 구성했습니다.
이로써 사이트 레코드를 생성하고 백엔드 사용자를 추가하며 다국어를 활성화하기 위해 백엔드 언어를 추가하여 TYPO3 CMS 구성을 시작할 수 있습니다. TYPO3 CMS에 대해 더 알아보려면 TYPO3의 공식 문서를 방문하십시오.
새 게시물을 받은 편지함에서 받기
스팸은 없습니다. 언제든지 구독 해지 가능합니다.