服务器要求
安装前需要准备的一切:PHP、数据库、扩展、Web 服务器以及可选的 FFmpeg。
TubePress 运行在标准的 LAMP 或 LEMP 环境上。无需安装任何框架,无需 Composer 或 Node 构建步骤,也不需要 ionCube 加载器—如果您的主机已能运行 WordPress,几乎可以肯定也能运行 TubePress。
本页介绍最低要求、生产环境推荐配置,以及仅特定功能所需的少量可选组件(FFmpeg、TubePress 账户)。Web 安装程序会在其系统检查步骤中自动为您检测所有内容。
最低要求
这是最低门槛。安装程序将拒绝继续,直到所有必需项目均通过检测。
| 组件 | 最低版本 | 备注 |
|---|---|---|
| PHP | 8.2 | 推荐 8.4;启用 OPcache |
| 数据库 | MySQL 5.7+ / MariaDB 10.4+ | InnoDB,utf8mb4 |
| Web 服务器 | Apache 2.4+ or Nginx | 需开启 URL 重写 |
| 必需扩展 | pdo_mysql, mbstring, fileinfo | 以及可用的 PHP 会话 |
| 推荐扩展 | curl, zip, GD or Imagick | 目录、插件安装、缩略图 |
| 可写路径 | config/, storage/, public/uploads/ | 由 Web 服务器用户拥有 |
必需的 PHP 扩展
以下三项扩展缺一不可,否则安装将被阻止:
还需要可用的 PHP 会话以及服务端 URL 重写(Apache mod_rewrite 或 Nginx try_files 规则)—安装程序会同时检测这两项。
推荐配置
要获得流畅的生产环境体验:
- PHP 8.4 配合 OPcache—TubePress 构建和测试所用版本,开启字节码缓存以提升速度。
- memory_limit 设为 256 MB 或更高—为批量导入和图像处理提供充足内存空间。
- curl、zip 和 GD(或 Imagick)—可选但推荐:目录下载和市场功能使用
curl,从控制面板安装主题和插件需要zip,缩略图生成需要 GD 或 Imagick。 - HTTPS—通过 TLS 提供网站服务,并将网站 URL 设置为
https地址。
定时任务通过 TubePress’s 内置伪 cron 自动运行,因此无需系统 crontab。高流量站点仍可接入真实 cron——详见 Cron & CLI。
视频上传限制
TubePress 默认将直接上传限制为 500 MB(可在 /admin/settings 中调整)。您的 PHP 和 Web 服务器限制必须至少同样大,否则大文件在到达应用前就会被拒绝:
; php.ini - allow large video uploads
upload_max_filesize = 512M
post_max_size = 512M
memory_limit = 256M
max_execution_time = 300在 Nginx 上还需提高 client_max_body_size;在 Apache 上为 LimitRequestBody。对于非常大的媒体库,建议转码后从远程存储提供服务——详见转码和存储。
Web 服务器
Web 根目录为 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
使用 try_files 实现简洁 URL,为主题和模板目录设置别名,并拒绝访问敏感路径:
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——将上传内容转换为适合 Web 的格式并生成预览缩略图。如果您导入已编码的文件或从外部存储或 CDN 提供服务,可完全跳过此步骤。详见转码。
可选:TubePress 账户
CMS 本身完整且免费。免费的 TubePress 账户可解锁按需付费的额外功能——AI 积分、40 万以上视频的目录、市场和支持服务。您从 150 个免费积分开始,无需账户即可运行完整网站。