源码简介
PlayTube是一个**分享程序,它能快速的建立一个**上传、导入、分享的网站,具有多语言、用户管理、**管理、**上传、从*******和vime等网站导入**等功能。
在线演示
官方演示
https://playtubescript.com/
v2.2.4版本新增一些语言,包括简体中文,但效果多少还是有那么点瑕疵 https://playtube.demo.themez.cc/
主要功能
更多功能介绍请访问官网查看
上传**: 上传本地**
导入**: 非常简单的从 YouTube, Dailymotion, 和 Vimeo 等站点批量导入**,此功能需要对应网站的API.
自动导入**: 设置一些关键词并创建导入任务,轻松从 YouTube 和 Dailymotion 导入**到你的网站!
高性能: PlayTube 可以轻松的处理超过 1B 的**.
WoWonder 登录集成:无缝对接 WoWonder 社交系统,可以使用社交系统的帐户授权登入.
喜欢 &**p; 反感: 用户可以对某**进行喜欢**.
评论系统: 注册用户可以对**进行评论.
订阅, 历史, 接下来观看: 功能也是比较人性化的.
用户频道: 完整的用户展示页.
**系统: 可以创建**、页面的**,一切都在后台的**设置里.
站点地图建立: 建立站点地图并自动发送到 Google/Bing.
SEO 友好: 搜索引擎优化友好的链接,非常有利于谷歌收录!
完整的后台: 功能完善的后台控制面板.
漂亮的 UI: 非常容易修改而且还很漂亮的模板.
安装需求
PHP 5.5 or Higher.
My**Li.
GD Library.
mbstring.
cURL.
allow_url_fopen.
更新日志
v2.2.4(2022 年 8 月 5 日)
添加了从 TikTok 导入**的功能。
添加了 BackBlaze 存储。
添加了印地语、乌尔都语、中文、印度尼西亚语、克罗地亚语、希伯来语、孟加拉语、日语、葡萄牙语、意大利语、波斯语、瑞典语、越南语、丹麦语、菲律宾语。
添加了将所有消息标记为已读的功能。
增加了消息的时间。
向消息用户添加更多负载。
添加了为直播添加**标题的功能。
添加cronjob.php文件,所有后台进程现在都添加到cronjob.php中,该文件应该添加到您的服务器crontab中,如何添加cronjob?
在几个部分改进了设计。
改进的 hreflang 标签。
改进了整个网站的 SEO。
从过时的库中删除 100MB+ 并用 cURL 替换它们,以获得更快的加载速度。
删除了 10 多个过时的文件并合并到一个文件(观看页面)。
从数据库中删除了 13 列,并替换为更快的方法(付款)。
修复了当您使用鼠标按钮****并将其粘贴到**字段时它不起作用(**同谋)
修复了 5 个 PHP 警告和致命错误。
FIXED nginx 规则,如果你使用的是 nginx,你需要用更新后的更新你的服务器的 nginx.conf。
修复了 ffmpeg 允许的最大进程数。
修复了超过 2.5GB 的文件的上传问题。
当您在**上放置**时已修复 -> ***设置中的网站**专业用户仍会看到网站**出现。
已修复历史页面未更新新观看的**。
修复了 404 页中没有标题的问题。
修复了出现在所有批量通知中的美元标记 ($)。
修复了重复相同**的自动播放**。
FIXED 重置**缺少**共谋系统。
已修复在管理面板 -> 用户中删除多个用户。
已修复专业用户无法将**设置为“精选”
FIXED Twitch 导入不起作用。
修复了 nodejs CROS 问题。
固定趋势页面显示 0 次观看的**。
如果用户上传新**,则不会收到 FIXED 积分。
修复了 API 中的重要安全漏洞。
修复 +10 小错误。
pj说明
原版程序由国际友人提供,由reishi进行pj。
安装方法、升级方法、伪静态规则
安装说明
解压缩上传Script里的内容到服务器
访问http://www.yoursite.com/install 按照要求填写每项内容。授权码处请填写topide.com
升级方法
解压缩上传Script里的内容到服务器,覆盖旧文件,然后将scripts目录外的update.php上传到服务器,运行
youdo**in.tld/update.php 进行升级。
Nginx伪静态规则
早期版本,并不一定适用于最新版。
官方给的规则在程序根目录里,nginx.conf,有用户反应不好用,今天reishi又特意安装了一个nginx环境测试了一份自己转换的规则,目前亲测无误,有测试的可以反馈一下。
location / {
if (!-e $request_filen**e){
rewrite ^/$ /index.php?link1=home;
}
if (!-e $request_filen**e){
rewrite ^/aj/([^/.]+)/?$ /ajax.php?type=$1&**p;first=$2;
}
rewrite ^/@([^/]+)(/|)$ /index.php?link1=timeline&**p;id=$1;
if (!-e $request_filen**e){
rewrite ^/([^/]+)(/|)$ /index.php?link1=$1;
}
}
location /reset {
rewrite ^/reset-password/([^/]+)(/|)$ /index.php?link1=reset-password&**p;code=$1;
}
location /confirm {
rewrite ^/confirm/(.*)/(.*)$ /index.php?link1=confirm&**p;code=$1&**p;e**il=$2;
}
location = /two_factor_login {
rewrite ^(.*)$ /index.php?link1=two_factor_login;
}
location = /two_factor_submit {
rewrite ^(.*)$ /index.php?link1=two_factor_submit;
}
location /v {
rewrite ^/v/(.*)$ /index.php?v=$1;
}
location /api {
rewrite ^/api/v(([0-9])([.][0-9]+))(/|)$ /api.php?v=$1;
}
location /admin {
rewrite ^/admin-cp$ /admincp.php;
rewrite ^/admin-cp/(.*)$ /admincp.php?page=$1;
}
location /admin-cdn/ {
alias /admin-panel/;
}
location /videos {
rewrite ^/videos/category/(.*)/rss(/|)$ /index.php?link1=videos&**p;page=category&**p;id=$1&**p;feed=rss;
rewrite ^/videos/category/(.*)/(.*)$ /index.php?link1=videos&**p;page=category&**p;id=$1&**p;sub_id=$2;
rewrite ^/videos/category/(.*)$ /index.php?link1=videos&**p;page=category&**p;id=$1;
rewrite ^/videos/(.*)/rss(/|)$ /index.php?link1=videos&**p;page=$1&**p;feed=rss;
rewrite ^/videos/(.*)$ /index.php?link1=videos&**p;page=$1;
}
location /articles {
rewrite ^/articles(/|)$ /index.php?link1=articles;
rewrite ^/articles/category/(.*)(/|)$ /index.php?link1=articles&**p;category_id=$1;
rewrite ^/articles/read/(.*)(/|)$ /index.php?link1=read&**p;id=$1;
}
location /aj {
rewrite ^/aj/([^/.]+)/([^/.]+)/?$ /ajax.php?type=$1&**p;first=$2 last;
rewrite ^/aj/([^/.]+)/?$ /ajax.php?type=$1&**p;first=$2 last;
rewrite ^/aj/([^/.]+)/([^/.]+)/([^/.]+)/?$ /ajax.php?type=$1&**p;first=$2&**p;second=$3 last;
}
location /edit {
rewrite ^/edit-video/(.*)?$ /index.php?link1=edit-video&**p;id=$1;
}
location /video_text {
rewrite ^/video_text/(.*)?$ /index.php?link1=video_text&**p;id=$1;
}
location /watch {
rewrite ^/watch/([^/]+)(/|)?$ /index.php?link1=watch&**p;id=$1;
rewrite ^/watch/([^/]+)/list/([^/]+)(/|)?$ /index.php?link1=watch&**p;id=$1&**p;list=$2;
}
location /embed {
rewrite ^/embed/(.*)?$ /index.php?link1=embed&**p;id=$1;
}
location /resend {
rewrite ^/resend/(.*)/(.*)?$ /index.php?link1=resend&**p;id=$1&**p;u_id=$2;
}
location /redirect {
rewrite ^/redirect/(.*)?$ /index.php?link1=redirect&**p;id=$1;
}
location /settings {
rewrite ^/settings/(.*)/(.*)$ /index.php?link1=settings&**p;page=$1&**p;user=$2;
rewrite ^/settings/(.*)$ /index.php?link1=settings&**p;page=$1;
}
location /terms {
rewrite ^/terms/([^/]+)(/|)$ /index.php?link1=terms&**p;type=$1;
}
location /go_pro {
rewrite ^/go_pro(/|)$ /index.php?link1=go_pro;
}
location /ads {
rewrite ^/ads(/|)$ /index.php?link1=ads;
rewrite ^/ads/create(/|)$ /index.php?link1=create_ads;
rewrite ^/ads/edit/(d+)(/|)$ /index.php?link1=edit_ads&**p;id=$1;
rewrite ^/ads/****ytics/(d+)(/|)$ /index.php?link1=ads_****ytics&**p;id=$1;
}
location /contact {
rewrite ^/contact-us(/|)$ /index.php?link1=contact;
}
location /messages {
rewrite ^/messages/(.*)$ /index.php?link1=messages&**p;id=$1;
}
location /view_****ytics {
rewrite ^/view_****ytics/(.*)$ /index.php?link1=view_****ytics&**p;id=$1;
}
location /video_studio {
rewrite ^/video_studio/(.*)$ /index.php?link1=video_studio;
}
location = /comments {
rewrite ^(.*)$ /index.php?link1=comments;
}
location = /dashboard {
rewrite ^(.*)$ /index.php?link1=dashboard;
}
location = /popular_channels {
rewrite ^(.*)$ /index.php?link1=popular_channels;
}
location = /create_article {
rewrite ^(.*)$ /index.php?link1=create_article;
}
location = /my_articles {
rewrite ^(.*)$ /index.php?link1=my_articles;
}
location /edit_articles {
rewrite ^/edit_articles/(.*)?$ /index.php?link1=edit_articles&**p;id=$1;
}
location = /age_block {
rewrite ^(.*)$ /index.php?link1=age_block;
}
location /site {
rewrite ^/site-pages/(.*)$ /index.php?link1=site-pages&**p;page_n**e=$1;
}
location /post {
rewrite ^/post/(.*)(/|)$ /index.php?link1=post&**p;id=$1;
}
location /edit_activity {
rewrite ^/edit_activity/(.*)(/|)$ /index.php?link1=edit_activity&**p;id=$1;
}