서버 요구 사항
설치 전에 준비해야 할 모든 것 — PHP, 데이터베이스, 확장 모듈, 웹 서버 및 선택 사항인 FFmpeg.
TubePress는 일반적인 LAMP 또는 LEMP 스택에서 실행됩니다. 설치할 프레임워크도, Composer나 Node 빌드 단계도, ionCube 로더도 필요하지 않습니다 — 호스트에서 WordPress가 이미 실행되고 있다면 TubePress도 거의 확실히 실행됩니다.
이 페이지에서는 최소 요구 사항, 프로덕션 환경에 권장하는 설정, 그리고 특정 기능에만 필요한 몇 가지 선택적 구성 요소(FFmpeg, TubePress 계정)를 다룹니다. 웹 인스톨러가 시스템 점검 단계에서 모든 항목을 자동으로 확인해 줍니다.
최소 요구 사항
이것이 최소 기준입니다. 인스톨러는 모든 필수 항목이 통과될 때까지 진행을 거부합니다.
| 구성 요소 | 최소 | 참고 |
|---|---|---|
| PHP | 8.2 | 8.4 권장; OPcache 활성화 |
| 데이터베이스 | MySQL 5.7+ / MariaDB 10.4+ | InnoDB, utf8mb4 |
| 웹 서버 | Apache 2.4+ 또는 Nginx | URL 재작성 포함 |
| 필수 확장 | pdo_mysql, mbstring, fileinfo | PHP 세션 정상 작동 필요 |
| 권장 확장 | curl, zip, GD 또는 Imagick | 카탈로그, 애드온 설치, 썸네일 |
| 쓰기 가능한 경로 | config/, storage/, public/uploads/ | 웹 서버 사용자 소유 |
필수 PHP 확장
다음 세 가지가 없으면 설치가 차단됩니다:
PHP 세션 정상 작동과 서버 측 URL 재작성(Apache mod_rewrite 또는 Nginx try_files 규칙)도 필수입니다 — 인스톨러가 두 가지 모두 확인합니다.
권장 설정
원활한 프로덕션 사이트를 위해:
- PHP 8.4 with OPcache — TubePress가 빌드 및 테스트된 버전으로, 속도를 위해 바이트코드 캐시가 활성화되어 있습니다.
- memory_limit 256 MB 이상 — 대량 가져오기 및 이미지 처리를 위한 충분한 여유 공간입니다.
- curl, zip 및 GD (또는 Imagick) — 선택 사항이지만 권장합니다: 카탈로그 다운로드 및 마켓플레이스는
curl을 사용하고, 패널에서 테마와 플러그인을 설치할 때는zip이 필요하며, 썸네일 생성에는 GD 또는 Imagick이 필요합니다. - HTTPS — TLS를 통해 사이트를 제공하고 사이트 URL을
https주소로 설정하세요.
예약된 작업은 TubePress 내장 의사 cron을 통해 자동으로 실행되므로 시스템 crontab이 필요하지 않습니다. 트래픽이 높은 사이트는 실제 cron을 연결할 수 있습니다 — Cron & CLI를 참조하세요.
동영상 업로드 제한
TubePress는 기본적으로 직접 업로드를 500 MB로 제한합니다(/admin/settings에서 조정 가능). PHP 및 웹 서버 제한이 최소한 그 이상이어야 하며, 그렇지 않으면 큰 파일이 앱에 도달하기 전에 거부됩니다:
; php.ini - allow large video uploads
upload_max_filesize = 512M
post_max_size = 512M
memory_limit = 256M
max_execution_time = 300Nginx에서는 client_max_body_size도 높이고, Apache에서는 LimitRequestBody도 높이세요. 매우 큰 라이브러리의 경우, 원격 스토리지에서 트랜스코딩하여 제공하세요 — 트랜스코딩 및 스토리지를 참조하세요.
웹 서버
웹 루트는 public/ 디렉토리이며, 모든 요청은 단일 프론트 컨트롤러인 public/index.php를 통해 라우팅됩니다. config/, src/ 및 storage/는 문서 루트 위에 두어(public/보다 한 단계 위에 위치) 직접 제공되지 않도록 하세요.
Apache
문서 루트를 public/으로 지정하고 배포된 .htaccess 파일이 작동하도록 허용하세요:
DocumentRoot /var/www/tubepress/public
<Directory /var/www/tubepress/public>
AllowOverride All
Require all granted
</Directory>Nginx
깔끔한 URL을 위해 try_files를 사용하고, 테마 및 템플릿 폴더를 별칭으로 지정하며, 민감한 경로는 차단하세요:
server {
root /var/www/tubepress/public;
index index.php;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.4-fpm.sock;
}
# Serve theme and template assets
location /themes/ { alias /var/www/tubepress/themes/; }
location /templates/ { alias /var/www/tubepress/templates/; }
# Never expose application internals
location ~ ^/(config|src|storage)/ { deny all; }
client_max_body_size 512M;
}두 서버 모두 정식 지원됩니다 — 인스톨러가 실행 중인 서버를 자동으로 감지합니다.
선택 사항: FFmpeg & 트랜스코딩
TubePress가 동영상을 로컬에서 트랜스코딩하길 원하는 경우에만 FFmpeg가 필요합니다 — 업로드를 웹 친화적 형식으로 변환하고 미리 보기 썸네일을 생성합니다. 이미 인코딩된 파일을 가져오거나 외부 스토리지 또는 CDN에서 제공하는 경우 완전히 건너뛸 수 있습니다. 트랜스코딩을 참조하세요.
선택 사항: TubePress 계정
CMS는 자체적으로 완전하며 무료입니다. 무료 TubePress 계정을 사용하면 종량제 추가 기능인 AI 크레딧, 40만 개 이상의 동영상 카탈로그, 마켓플레이스 및 지원이 잠금 해제됩니다. 150 무료 크레딧으로 시작하며 전체 사이트를 운영하는 데 계정이 필요하지 않습니다.