BP3-一款百度网盘目录列表类PHP程序

📚简介

bp3是一款网盘程序,使用php开发,任意支持php的服务器均可以部署,包括虚拟主机

bp3本身并不存储数据,而是对接百度网盘,完全使用官方接口,长期稳定

如何用一句话描述bp3能做什么?

  • 百度云会员用户:bp3=百度云+高速下载站
  • 百度云普通用户:bp3=百度云+蓝奏云(单文件100MB不限速)
  • 百度云开发者:bp3有强大的授权系统,可为控制台程序或Web程序快速授权

另外,bp3是一个创新设计作品,它有一些新颖的设计、功能,请相信它会给你带来惊喜。

演示:bp3.52dixiaowo.com

📥安装

使用宝塔面板新建一个网站

下载源代码到网站根目录,最新地址如下:

https://github.com/zhufenghua1998/bp3/archive/refs/heads/main.zip

解压得到的main.zip,正常情况下你将得到一个子目录bp3_main,把该目录的所有文件移动到根目录(当然你也可以部署在子目录中)

接下来,访问网站首页,提示开始配置,并点击体验免app:

接下来,选中一个授权地址:

点击获取授权链接,自动弹出百度网盘授权页面并点击授权:

接下来,自动返回登录页面,默认账户密码bp3:

注意:如果账户密码错误连续错误3次,账户会被锁定。

简要配置

经过前面的配置,你已经完成了安装与登录。

除了用户名和密码外,另一个最重要的配置,是配置前台路径

默认情况下,前台(未登录)可以查看所有的文件。我们必须配置一个前缀,只开放一个子目录给访客,而不是所有文件都开放。

默认情况下,前台路径为空(看上图)时即开放根目录,如果我们:

  • 开放根目录:留空
  • 开放/apps目录:填写/apps,注意结尾不要/

也就是说,我们只想开放apps目录下的所有文件时,我们在“前台路径”配置中写下 /apps

此时,再返回前台,我们发现前台只看到了/apps目录下的内容

此时,基本配置就已经完毕了。

注意:如果发现前台、后台文件是空的,有可能是网络原因授权失败,多出现于网络不佳的海外服务器。请你明白,程序要和百度服务器交互数据,如果是程序所在的主机网络无法连接至百度服务器,我们是无能为力的。

更多帮助

建议阅读网站后台的”帮助“页面。

错误代码:redirect_uri_mismatch?

这个错题提示的是回调地址不匹配,在程序中会智能拼接正确的回调地址并且不可修改,如果你正常的复制粘贴,那么出现此错误是因为百度网盘官方数据延迟,当你新注册百度网盘开发者或者新注册百度网盘开发者app时,此时就可能出现此错误,请耐心等待1-2小时,或者1-2天,或者其他时间。如果你确实怀疑,请把请求出错时的url展开,并检验该参数。

如果某一天突然发现账户已经被锁定,请修改根目录下config.php文件的chance为正数,例如:

chance代表剩余可用次数,若次数耗尽(小于或等于0)则锁定。

如果不希望前台提供下载,可在设置中把以下2项修改为1(默认0)即可:

当然,即使你关闭了下载,登录情况下仍能正常使用前台功能。

给出一些后台配置字段描述

字段名 作用
网站名称 前台显示的网站名称
网站副标题 前台显示的网站副名称
用户名 登录后台的账户名
用户密码 登录后台的账户密码
账户锁定 连续登录失败将导致锁定的次数
app_id 可选:自己申请的app_id
secret_key 可选:app对应的secret_key
redirect_uri 可选:app对应的回调地址
前台路径 前台开放给游客的起始目录
官博地址 可忽略
github地址 可忽略
baidu账号 可忽略
baidu密码 可忽略
关闭直链 关闭直链后(0假1真),游客不可使用直链
关闭下载 关闭下载后(0假1真),游客不可使用下载功能
open_grant 给游客开放内置的授权系统(0假1真),
注意点:
授权系统默认在安装根目录/grant
授权系统必须配置app_id,secret_key,redirect_uri进行初始化
授权地址 当前系统使用的授权系统的地址

怎么从免app过渡到配置的授权系统?

假设你原本使用免app搭建完毕,而后想配置自己申请的app,那么需要在后台中设置

  • 添加正确的app_key
  • 填写正确的secret_key
  • 填写正确的redirect_uri

此时内置的授权系统就已经生效,但是系统中使用的授权地址,仍需要配置。这个“授权地址”,非常灵活,它真正决定了你使用的授权系统,假设你要使用内部的app授权系统,此时就填写内部app的授权地址即可。配置完毕后在后台手动点击获取授权,即可切换成功。

实际上饶了一圈,这里填写前3个信息仅仅是初始化内部的授权系统。而授权地址的配置,才决定了你接入哪个授权系统,它也仅仅只是配置一个url而已,所以才需要最后的手动点击获取授权触发切换。

授权系统的两种用法?

授权系统首页在根目录下的grant目录,如果直接访问也可以轻易获取授权信息并以页面展示。

当携带display参数(转编码的url)时,将携带名为param、授权后的json数据结果重定向到前面指定的url中。这也就是免app系统的核心实现。

两种授权方式有各自的用法,一般来说使用携带display参数的重定向,如果你仅仅需要获取授权数据则直接访问即可。

因为百度开发者仅仅可以取得2个app,授权系统的灵活调度则显得意义重大,当你已经部署bp3,那么完全可以使用该授权系统为其他bp3或者任意百度网盘开发者程序进行授权。

授权信息失效?

每次百度授权信息有效期为30天,当你访问首页时,此时自动判断token剩余时间,如果有效期小于20天则自动刷新。

当然,一般情况下正常使用即可,相当于无限刷新,如果站点流量非常小,请使用脚本抓取一下首页,例如宝塔面板的定时访问url功能都可以满足。

没流量也没脚本?那只能说明你并不常用,访问前台没有数据?不要紧张,此时仅需要手动登录后台并点击“获取授权“即可恢复,当然也算不上辛苦。

账户切换?

在后台首页点击获取授权,并使用新账户登录授权即可。(提示:切换账户后请修改前台路径)

共享app?

第一个bp3自己申请app部署,那么第二个bp3(无论多少个)可共享第一个bp3的授权app,在初始化第二个bp3时,请使用免app部署,并填写第一个bp3的授权系统地址(后台帮助文档中可拷贝)作为自定义授权系统地址,点击确定后,其他步骤与免app一致。

点赞
  1. chw说道:
    Google Chrome Windows 7

    好牛!能有偿技术支持吗?461346231钩@qq.com

发表评论

电子邮件地址不会被公开。必填项已用 * 标注