Rat's

使用PlayTube搭建私人的视频网站
简介PlayTube是一个视频分享程序,它能快速的建立一个视频上传、导入、分享的网站,具有多语言、用户管理、广告管...
扫描右侧二维码阅读全文
04
2018/06

使用PlayTube搭建私人的视频网站

简介

PlayTube是一个视频分享程序,它能快速的建立一个视频上传、导入、分享的网站,具有多语言、用户管理、广告管理、视频上传、从youtubevime等网站导入视频等功能。

截图

请输入图片描述
请输入图片描述
请输入图片描述
请输入图片描述

功能

  • 上传视频:上传本地视频。
  • 导入视频:非常简单的从YouTubeDailymotion、和Vimeo等站点批量导入视频,此功能需要对应网站的API
  • 自动导入视频:设置一些关键词并创建导入任务,轻松从YouTubeDailymotion导入视频到你的网站。
  • 高性能:PlayTube可以轻松的处理超过1B的视频。
  • WoWonder登录集成:无缝对接WoWonder社交系统,可以使用社交系统的帐户授权登入。
  • 喜欢&反感:用户可以对某视频进行喜欢投票。
  • 评论系统:注册用户可以对视频进行评论。
  • 订阅、历史、接下来观看:功能也是比较人性化的。
  • 用户频道:完整的用户展示页。
  • 广告系统:可以创建视频、页面的广告,一切都在后台的广告设置里。
  • 站点地图建立:建立站点地图并自动发送到Google/Bing
  • SEO友好:搜索引擎优化友好的链接,非常有利于谷歌收录。
  • 完整的后台:功能完善的后台控制面板。
  • 漂亮的UI:非常容易修改而且还很漂亮的模板。

安装

环境要求:PHP >= 5.5MySQLGD LibrarymbstringcURLallow_url_fopen

这里使用宝塔面板做演示,如果你有基础的话,也可以使用其它面板或者lnmp一键包。

1、安装宝塔

#Centos系统
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install.sh && sh install.sh
#Ubuntu系统
wget -O install.sh http://download.bt.cn/install/install-ubuntu.sh && sudo bash install.sh
#Debian系统
wget -O install.sh http://download.bt.cn/install/install-ubuntu.sh && bash install.sh

安装完成后,进入面板安装PHPMysqlNginxphpmyadmin

2、安装程序
添加域名,然后下载程序源码,并将程序上传到网站根目录解压,源码下载:

#v1.4.1完整源码
https://www.moerats.com/usr/down/Playtube/playtube-v1.4.1-full.zip
#增量包,升级时需要一个一个挨着解压覆盖
https://www.moerats.com/usr/down/Playtube/playtube-v1.4.2-update.zip
https://www.moerats.com/usr/down/Playtube/playtube-v1.4.3-update.zip
https://www.moerats.com/usr/down/Playtube/playtube-v1.4.5-update.zip
https://www.moerats.com/usr/down/Playtube/playtube-v1.4.5.1-update.zip
https://www.moerats.com/usr/down/Playtube/playtube-v1.5-update.zip
https://www.moerats.com/usr/down/Playtube/playtube-v1.5.1-update.zip
https://www.moerats.com/usr/down/Playtube/playtube-v1.6-update.zip
#语言包
https://www.moerats.com/usr/down/Playtube/lang1.4.1-v1.4.2-cn.zip

#升级方法,比如v1.4.1升级到v1.4.2
将v1.4.2增量包上传至根目录,解压并直接替换根目录文件,再访问http://xx.com/update.php进行更新即可。

#v1.4.5.1开心完整版源码
https://www.moerats.com/usr/down/Playtube/playtube-v1.4.5.1-nulled.zip

#v1.6开心完整版源码,安装的时候购买代码和其他版本不一样,V1.6购买代码为:顶点网破解
https://www.moerats.com/usr/down/Playtube/playtube-v1.6-nulled.zip

再添加Nginx伪静态:

if (!-f $request_filename){
    set $rule_0 1$rule_0;
}
if (!-d $request_filename){
    set $rule_0 2$rule_0;
}
if ($rule_0 = "21"){
    rewrite ^/$ /index.php?link1=home ;
}
rewrite ^/$ /index.php?link1=home ;
rewrite ^/reset-password/([^/]+)(/|)$ /index.php?link1=reset-password&code=$1 ;
rewrite ^/confirm/(.*)/(.*)$ /index.php?link1=confirm&code=$1&email=$2 ;
rewrite ^/api/v(([0-9])([.][0-9]+))(/|)$ /api.php?v=$1 ;
rewrite ^/admin-cp$ /admincp.php ;
rewrite ^/admin-cp/(.*)$ /admincp.php?page=$1 ;
rewrite ^/admin-cdn/(.*)$ /admin-panel/$1 last;
rewrite ^/videos/category/(.*)/rss(/|)$ /index.php?link1=videos&page=category&id=$1&feed=rss ;
rewrite ^/videos/category/(.*)$ /index.php?link1=videos&page=category&id=$1 ;
rewrite ^/videos/(.*)/rss(/|)$ /index.php?link1=videos&page=$1&feed=rss ;
rewrite ^/videos/(.*)$ /index.php?link1=videos&page=$1 ;
rewrite ^/articles(/|)$ /index.php?link1=articles ;
rewrite ^/articles/category/(.*)$ /index.php?link1=articles&category_id=$1 ;
rewrite ^/articles/read/(.*)$ /index.php?link1=read&id=$1 ;
if (!-f $request_filename){
    set $rule_14 1$rule_14;
}
if (!-d $request_filename){
    set $rule_14 2$rule_14;
}
if ($rule_14 = "21"){
    rewrite ^/aj/([^/.]+)/?$ /ajax.php?type=$1&first=$2 last;
}
rewrite ^/aj/([^/.]+)/([^/.]+)/?$ /ajax.php?type=$1&first=$2 last;
rewrite ^/aj/([^/.]+)/([^/.]+)/([^/.]+)/?$ /ajax.php?type=$1&first=$2&second=$3 last;
rewrite ^/edit-video/(.*)?$ /index.php?link1=edit-video&id=$1 last;
rewrite ^/watch/([^/]+)(/|)?$ /index.php?link1=watch&id=$1 last;
rewrite ^/watch/([^/]+)/list/([^/]+)(/|)?$ /index.php?link1=watch&id=$1&list=$2 last;
rewrite ^/embed/(.*)?$ /index.php?link1=embed&id=$1 last;
rewrite ^/resend/(.*)/(.*)?$ /index.php?link1=resend&id=$1&u_id=$2 last;
rewrite ^/redirect/(.*)?$ /index.php?link1=redirect&id=$1 last;
rewrite ^/settings/(.*)/(.*)$ /index.php?link1=settings&page=$1&user=$2 ;
rewrite ^/settings/(.*)$ /index.php?link1=settings&page=$1 ;
rewrite ^/terms/([^/]+)(/|)$ /index.php?link1=terms&type=$1 ;
rewrite ^/go_pro(/|)$ /index.php?link1=go_pro ;
rewrite ^/ads(/|)$ /index.php?link1=ads ;
rewrite ^/ads/create(/|)$ /index.php?link1=create_ads ;
rewrite ^/ads/edit/(d+)(/|)$ /index.php?link1=edit_ads&id=$1 ;
rewrite ^/contact-us(/|)$ /index.php?link1=contact ;
rewrite ^/@([^/]+)(/|)$ /index.php?link1=timeline&id=$1 ;
rewrite ^/messages/(.*)$ /index.php?link1=messages&id=$1 ;
if (!-f $request_filename){
    set $rule_33 1$rule_33;
}
if (!-d $request_filename){
    set $rule_33 2$rule_33;
}
if ($rule_33 = "21"){
    rewrite ^/([^/]+)(/|)$ /index.php?link1=$1 ;
}

最后打开域名进行安装配置,授权码:nulled-by-reishi,直接使用v1.4.5.1完整版的可能不需要授权。
请输入图片描述
请输入图片描述
请输入图片描述

3、中文设置
我们通过phpmyadmin进入到数据库,找到PlayTube所使用数据库,删除langs.sql,再将语言包的langs.sql文件导入到数据库即可。

然后刷新网站会看到有右下角语言有中文的,如果选择中文后,分类显示不出来,可能是分类语言乱码,这时候我们去根目录assets/langs,将乱码的语言文件改成中文.php即可。

4、安装ffmpeg
要使用程序完整的功能,我们还需要安装ffmpeg。安装参考:使用静态ffmpeg二进制文件秒安装ffmpeg

再打开宝塔,点击左侧软件管理-PHP设置-禁用函数-删除shell_exec。最后在后台设置FFmpeg二进制文件路径为/usr/bin/ffmpeg

5、更多设置

#视频分类设置
网站目录./assets/langs/中文.php修改。
#编辑样式表
./themes/default/css,主样式文件是style.css
#添加自己的代码
想在head、body、footer标签中添加自己的代码,请在./themes/default/layout/container.html修改

差不多到这里就算安装完成了,然后更多功能自行研究吧。

最后由于最新版的Plytube没汉化,用起来可能不是很方便,如果想做视频站的,还是建议使用中文程序,可以试试开源版express-ffmpeg云转码程序→传送门

Vultr新用户注册送100美元/16个机房按小时计费,支持支付宝,【点击查看】。
最后修改:2019 年 05 月 11 日 11 : 34 PM

发表评论

104 条评论

  1. qmdl

    从youtube导入时出现的这个,想问一下这个应该怎么处理,需要改那些配置文件 非常感谢。
    Error 403 Access Not Configured. YouTube Data API has not been used in project 690663376684 before or it is disabled. Enable it by visiting https://console.developers.google.com/apis/api/youtube.googleapis.com/overview?project=690663376684 then retry. If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry. : accessNotConfigured

    1. Rat's
      @qmdl

      这个应该youtube api过期,没权限啥的

      1. qmdl
        @Rat's

        需要改那个配置文件能告诉我吗

        1. Rat's
          @qmdl

          这个忘了,很久没用了

  2. TopBiz

    undefined

    @Rat's 安装完成后页面访问正常,后台访问正常,维护上传视频的时候提示undefined,和解?上传限制也都改了,真心不知道需要修改什么地方。请Rat‘s帮忙解决下,谢谢

    1. Rat's
      @TopBiz

      这个不太清楚,得看控制台啥的

      1. TopBiz
        @Rat's

        关键问题是Centos+宝塔就不能上传,换成Centos+小皮面板就能上传。。。

        云主机可以用宝塔不能用小皮面板,所以只能是研究为什么宝塔架设后不能上传文件。。。

        1. Rat's
          @TopBiz

          这个应该和宝塔关系不大,具体就不太清楚了

  3. C36AE

    安装完毕后,重定向过多导致无法访问该怎么解决呢?

    1. Rat's
      @C36AE

      检查下nginx配置

  4. dd

    感谢分享。。。不过有很多css在国外。。。奇慢无比

    1. Rat's
      @dd

      可以花点精力把css本地化

  5. mclk

    怎么设置YouTube api

    1. Rat's
      @mclk

      你是说申请API还是在程序里设置API?前者的话,我以前发过,不过删掉了,你百度或谷歌一下,挺简单的,后者的话,只能你自己研究了。

  6. 爵珞

    上传完视频 点击发布 提示
    Please check the details

    不知道是什么原因

  7. whattf

    assets/langs 目录下没有乱码的东西,也没有“中文.php”……然后分类点不了……怎么回事捏?

    1. Rat's
      @whattf

      文章留的中文语言包导入了没?

      1. whattf
        @Rat's

        导入了那里头只有一个SQL文件,然后后台是没有中文,Manage Movies Categories 、Categories这两个点击Add时500错误,Manage Sub Categories跳转页面也是500错误。还有啊……上传视频后的表单最后一个输入框点击时显示“$1”不知道时啥东西……我时直接安装的v1.6完整版……

      2. whattf
        @Rat's

        导入了,那个只有一个SQL文件

  8. 樱花风誓

    请问大佬授权码错误是什么情况啊

    1. Rat's
      @樱花风誓

      文章中的英文授权貌似只适合1.4.1那几个版本,最新版的1.6文章也说了,购买代码为:顶点网破解。注意是汉字。

  9. fly

    整整一天……试了无数安装ffmpeg的方法 也确定usrbin目录下有ffmpeg文件 还是提示 /usr/bin/ffmpeg没找到ffmpeg /usr/local/bin全部都试过了……木法……

    1. Rat's
      @fly

      这个问题昨天好像也有个人遇到了,等我明天帮他看看,顺便找下问题吧。

      1. fly
        @Rat's

        有结果了么 大佬

        1. Rat's
          @fly

          没有,没联系我了。

          1. fly
            @Rat's

            但是 后台的邮箱设置好了 注册也收不到邮件……这个博主有研究过么…… 保证设置没问题

            1. Rat's
              @fly

              没有使用邮箱。

          2. fly
            @Rat's

            我今天又研究了下· 虽然有提示找不到ffmpeg 但是上传后的渲染过程 ffmpeg是在运行的 占用CPU达到了100%……

          3. fly
            @Rat's

            应该和系统有关 今天我临时开了个vultr的centos7 就没问题 ……真是烦人

      2. fly
        @Rat's

        谢谢

        1. fly
          @fly

          还有伪静态 使用博主您的伪静态 视频的分享网址打开始404 部分浏览器点什么视频都是404 如果使用根目录的nginx。conf作为伪静态规则 视频倒是能打开了 但是不能发布和修改……

  10. fly

    “undefined”的还要修改php.ini里的两个参数upload_max_filesize = 和post_max_size =

  11. yang

    感谢分享教程

  12. 剧粉

    Amazon S3后台设置停用,能连接成功,设置启用就提示400错误了

    1. Rat's
      @剧粉

      没有s3,也没试过,你用f12看看

      1. 剧粉
        @Rat's

        F12看都是正常的,没有报错,但是都是测试连接的时候提示400错误,然后上传的视频也发布不了

        1. Rat's
          @剧粉

          那就不清楚了,没用过s3

  13. 剧粉

    Amazon S3怎么配置啊,后台设置一直提示400错误

  14. 小醉寒

    Rat,,关于topic破解的wowonder和sngine社交源码的安装教程能发一篇文章吗?有些内容不明白。采纳~~~~

    1. Rat's
      @小醉寒

      有空我看看

  15. mclk

    怎么设置youtube的API

    1. Rat's
      @mclk

      这个不是很清楚,没玩到这一步。

      1. mclk
        @Rat's

        现在知道了吗?

      2. mclk
        @Rat's

        ...

  16. chanhey

    打开shell_exec,然后后台设置ffmpeg路径一直提示找不到,whereis显示路径也是/usr/bin/ffmpeg....

    1. Rat's
      @chanhey

      这个按照教程做一般是没问题的,具体你的是什么情况我就不知道了。

  17. 当成一棵树吧

    大佬大佬 导入的时候只支持MP4不支持mkv怎么办啊 在数据库改mkv地址视频可以正常播放

    1. Rat's
      @当成一棵树吧

      这个看后台能不能设置吧。

  18. Billyy

    为何不像AVS一样有镶入视频呢 ,那么好看的系统 可惜了

    1. Rat's
      @Billyy

      这个就不是很清楚了。

  19. 火龙果

    为何上传视频时"发布"按钮一直无法使用?

    1. Rat's
      @火龙果

      上传完成,还要等转码才能发布,你的ffmpeg装了没?还有ffmpeg后台设置和禁用函数都要弄好。

      1. 火龙果
        @Rat's

        感谢回复,是nginx里面的client_max_body_size参数设小了。视频也转换了,但是点击“发布”后左下角跳出“undefined”。搞不懂又是啥问题。

        1. Rat's
          @火龙果

          这个就不是很清楚了。

  20. 行道

    这个转码好像有问题,不懂是不是设置出问题,上传1080p的视频,但是转码生成不了1080p,最高转码到720p。

    1. Rat's
      @行道

      这个不是很清楚,我转的也都是720p。

  21. 行道

    原来是用管理员账户登录就可以到后台,真是很好的设置。
    发现有一个问题,网站设置为中文,上传视频的分类看不到下拉菜单,设置成英文就可以看到。这个怎么解决呢?

    1. Rat's
      @行道

      这个貌似BUG,要是有强迫症,那就用英文的。

      1. 行道
        @Rat's

        解决了,你的教程写得很清楚:根目录assets/langs,将乱码的语言文件改成中文.php即可。

        1. Rat's
          @行道

          解决好了就行,我都没咋用过,就测试转码正常,能正常用就完事了。

  22. 行道

    请问安装好了网站,后台地址是多少啊?

  23. soradaisuki

    点击转码就报错
    at ChildProcess.<anonymous> (/root/express-ffmpeg/node_modules/fluent-ffmpeg/lib/ffprobe.js:233:22)

    at emitTwo (events.js:125:13) at ChildProcess.emit (events.js:213:7) at Process.ChildProcess._handle.onexit (internal/child_process.js:197:12)

    events.js:182

    throw er; // Unhandled 'error' event ^

    TypeError: Cannot read property 'format' of undefined

    at /root/express-ffmpeg/helper/listsffmpeg.js:48:35 at /root/express-ffmpeg/node_modules/mongoose/lib/model.js:4518:16 at (anonymous function).call (/root/express-ffmpeg/node_modules/mongoose/lib/query.js:3800:7) at process.nextTick (/root/express-ffmpeg/node_modules/mongoose/lib/helpers/query/completeMany.js:35:39) at _combinedTickCallback (internal/process/next_tick.js:95:7) at process._tickCallback (internal/process/next_tick.js:161:9)
    1. soradaisuki
      @soradaisuki

      评论错地方了...

  24. 天城

    1.4.3 在哪?

    1. Rat's
      @天城

      仔细观察文章。

      1. 天城
        @Rat's

        搭建不起来

        1. Rat's
          @天城

          那就是姿势有问题。

  25. johnny

    大佬你好,我将上传大小限制改成了10G,然后上传3G的视频在点击”PUSLISH”后在左下角提示undefined,但是我上传1.9G的文件是正常的。大佬有遇到过这个问题吗?能否给点思路?
    谢谢

    1. xredred
      @johnny

      我也是这个问题 我PHP设置全部修改为10g 超时10000秒上传100多m的都是提示undefined,ffmpeg都是配置好的,就上传成功过一次后面怎么设置都undefined,官方也没有给出解答,想买正版也放弃了

    2. Rat's
      @johnny

      没遇到过,我上传最多也才200M,你看下后台设置。还有PHP设置。

  26. menglicl

    这个ffmpeg不能处理mkv格式视频?

    1. Rat's
      @menglicl

      好像可以,我测试过好几种格式的视频。

      1. menglicl
        @Rat's

        上传的视频找不到源或者未支持格式报错

        1. Rat's
          @menglicl

          检查下你的ffmpeg安装了没,需要用本文给个方法安装,还有后台设置ffmpeg路径。

          1. menglicl
            @Rat's

            设置ok的

            1. menglicl
              @menglicl

              我更换两人centos6系统就好了

  27. kisj

    上传的片子显示错误,播放不了,不知道啥原因

    1. Rat's
      @kisj

      我之前测试过,都能转,也能看的。

  28. kisj

    这个播放问题怎么解决。。。。

    1. Rat's
      @kisj

      什么问题?

      1. kisj
        @Rat's

        上传的片子方不了哇

        1. Rat's
          @kisj

          显示一直转码还是啥?

  29. kju147

    安装完设置之后打不开网站了。。

    1. Rat's
      @kju147

      检查下你的操作。

  30. langrencao

    刚才测试了下,为什么上传的视频不能播放呢,点了播放按钮没反应

    1. Rat's
      @langrencao

      什么格式的视频。

      1. langrencao
        @Rat's

        点击播放 左下角显示于 facebook 连接,,,,

      2. langrencao
        @Rat's

        mp4格式的视频,还有别的格式的都测试了,不能播放,也试过勾选ffmpeg ,但是依然不行呢
        www.*.top,临时搭建的,看看什么问题呢?

        你测试过吗,是否可以正常播放?

        1. Rat's
          @langrencao

          我用1. 4.2的版本时候是可以播放的,一般mp4的话,不用ffmpeg都可以播放,我把ffmpge换了种安装方式,你可以照着重新来一遍,如果还不行的话,那只能说你转换的码率什么的,机子不支持。

          1. langrencao
            @Rat's

            刚才又把1.43从新安装了一遍,其实已经安装好几遍了,但是都是一样的问题,换电脑换手机换浏览器,都不能播放,以前搭建的宝塔,会不会是宝塔的问题呢?
            楼下有搭建后成功的吗?

            1. Rat's
              @langrencao

              我这两天试一下搭建1.4.3吧。

              1. langrencao
                @Rat's

                谢谢博主,成了留言啊,正好手上需要这个

                1. Rat's
                  @langrencao

                  视频无法转码播放的问题已修复好。

                2. Rat's
                  @langrencao

                  使用ffmpeg功能的话,上传是会看不到视频,这个可能与ffmpeg有关,你有时间可以折腾下ffmpeg。

  31. mdzz

    91不是卡的扣脚吗。。。

    1. Rat's
      @mdzz

      卡正常,一大堆爬虫没爬挂算不错了。

  32. 天了噜

    求大佬告知怎么爬91

    1. Rat's
      @天了噜

      很久前发过了:https://www.moerats.com/archives/501/。

      1. 天了噜
        @Rat's

        这个我看了 ,第一第2个爬不了!其他2个可以爬, 谢谢大佬@

        1. 天了噜
          @天了噜

          回复一连串的代码, Traceback (most recent call last):起头的 很长!

          1. Rat's
            @天了噜

            等我哪天再试试。

        2. Rat's
          @天了噜

          有什么错误提示吗,第一个和第二个。

  33. ZAERA

    在线看片指日可待

    1. Rat's
      @ZAERA

      用这个还不如爬91。