项目基础简介
PlayTube是一套可以自行部署的PHP视频建站CMS,用来搭建类似YouTube风格的视频分享与流媒体网站,面向内容创作者、机构以及媒体公司,支持服务器私有化部署,苹果站整理这套系统相关资料,方便大家了解这套视频程序。
程序开箱即可部署,自带完整后台管理面板、多套前端主题,对外提供REST版本化API,可以对接原生移动端APP。数据存储使用MySQL数据库,视频媒体依靠FFmpeg完成转码处理;可选搭配Node.js+Socket‑IO组件,用来实现各类网页实时交互能力。当前稳定版本为v3.1.1,文档支持英语、波斯语、库尔德语三种语言。

系统核心功能
视频上传,FFmpeg媒体转码,自适应码率流媒体播放。
支持直播推流、短视频竖版Shorts内容模块。
用户专属频道、订阅信息流、观看历史、点赞收藏视频。
评论、动态时间线、文章内容、话题标签、站内消息通知。
商业化能力:付费会员、付费点播视频、钱包交易、广告投放、联盟推广体系。
REST接口app_api/v1.0,给iOS、安卓原生APP提供数据服务。
第三方社交账号登录,同时支持两步身份验证。
对接多种支付网关,包含Stripe、支付宝等主流支付渠道。
存储支持本地磁盘、FTP远程存储、亚马逊S3对象存储。
管理后台:数据看板、内容审核、数据分析、全站参数配置。
内置两套前端主题:default、youplay,可自行新增开发主题。
可选Node.js实时服务,实现消息实时推送。
技术栈说明
| 层级 | 技术详情 |
| 后端 | PHP7.1及以上版本,使用MySQLi扩展 |
| 数据库 | MySQL,数据库初始化文件playtube.sql |
| 媒体处理 | FFmpeg、getID3 |
| 实时服务(可选) | Node.js、Express、Socket.IO |
| 前端 | JavaScript、HTML、CSS,独立主题模板引擎 |
| 接口服务 | 版本化REST API,专供移动端调用 |
| Web服务器 | Apache(.htaccess)、Nginx(提供nginx.conf配置样例) |
服务器环境要求
PHP版本7.1或者更高
开启MySQLi数据库扩展
PHP扩展:GD库、mbstring、calendar
开启cURL,allow_url_fopen配置打开
启用shell_exec函数,FFmpeg转码功能依赖该函数
Web服务软件Apache/Nginx,MySQL数据库实例
完整安装部署步骤
1、通过FTP工具把全部程序文件上传到网站服务器根目录,本地测试可以放置localhost根目录。
2、浏览器访问安装地址:http://www.YOURSITE.com/install
3、阅读并同意服务条款,继续下一步。
4、安装程序会自动校验服务器环境,确认全部环境条件满足。
5、填写安装表单信息:Envato购买授权码、MySQL数据库连接信息、网站URL、站点名称、站点邮箱、管理员账号密码。注意站点邮箱需要使用服务器邮箱,不要使用公共邮箱。
6、点击安装按钮,等待执行完成,完整安装最多耗时5分钟左右。
Nginx服务器额外配置
将程序包内nginx.conf的配置内容复制到服务器主nginx.conf配置文件,一般路径为/etc/nginx/nginx.conf,保存后重载Nginx服务。
定时任务CronJob配置(必须配置)
安装完成后需要配置定时任务执行后台业务,添加到服务器crontab:
*/15 * * * * php -f {PATH_TO_SCRIPT}/cronjob.php > /dev/null 2>&1把{PATH_TO_SCRIPT}替换为程序的服务器绝对路径。
可选:Node.js实时服务部署
cd nodejs npm install npm start
项目目录结构说明
playtube/ ├── index.php # 网站入口控制器 ├── admincp.php # 后台管理面板入口 ├── api.php # API接口总入口 ├── ajax.php # ajax请求入口 ├── cronjob.php # 定时任务脚本 ├── secure_video.php # 视频安全分发 ├── playtube.sql # 数据库初始化SQL ├── nginx.conf # Nginx配置示例 ├── admin-panel/ # 后台面板页面与静态资源 ├── app_api/v1.0/ # 移动端REST接口 ├── sources/ # 各个业务页面模块,播放、上传、直播、短视频等 ├── assets/libs/ # 支付、存储、社交、媒体类第三方库 ├── themes/ # 网站前端主题目录,default、youplay两套内置模板 ├── nodejs/ # Node.js实时服务代码 ├── install/ # web网页安装程序 └── upload/ # 用户上传视频、截图存储目录
使用注意与总结
PlayTube属于独立视频分享建站系统,和苹果CMS这类影视聚合CMS定位不一样,偏向用户自主上传视频、做UGC视频平台,自带完整会员、付费、直播、短视频能力,还支持对接手机APP。部署的时候重点关注PHP函数shell_exec、FFmpeg环境,没有该环境视频转码功能无法工作,同时定时cron任务必须配置,后台相关业务才会正常执行。
该程序需要有效的Envato购买授权码才可以走网页安装流程,建议部署前仔细核对服务器全部环境参数,避免安装失败。搭建视频类站点同时需要遵守网络相关法律法规,做好内容审核,取得对应业务资质再对外提供服务。
