当前位置: 首页 > php>阅读正文

bp3简易使用手册

2022.7.4 朱丰华 11160 次 3条评论 4293字

bp3是一个使用php开发的百度网盘开发者接口程序,百度网盘目录搜索引擎,文件展示搜索目录树,在线目录搜索索引,百度网盘文件下载等。

写在前面:本文档仅针对最新版bp3程序有效,项目github地址:zhufenghua1998/bp3(请阅读项目的readme.md,有关于项目的详细描述)

gitee 地址: zhufenghua1998/bp3(gitee.com)

快速安装

先下载源码,下载地址为:

gitee地址(需要登录才可下载):

https://gitee.com/zhufenghua1998/bp3/repository/archive/main.zip

如果你会使用 git,那么可以直接 git clone源码,可以跳过 gitee 的登录

git clone https://gitee.com/zhufenghua1998/bp3 --depth 1

github地址:

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

下载完成后,部署到你的网站中,PHP版本不要太高或太低,开发环境PHP74,注意需要Curl和Zip扩展。

不需要什么特别的操作,正常的把代码部署上去就可以了,然后直接访问程序首页。

如果你申请不了百度开发者app,可以试试“内置app授权系统”,它内置了bp3开发者提供的一个app。

若你使用了内置app授权系统,你会发现只需要填写管理员的授权信息即可。

无论你使用了哪一种初始化,都将跳转登录页面。

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

正常来说,你已经进入到管理员后台,尽管已经配置了信息,但还未授权账户,点击“获取授权”

上面这个链接,将跳转到你配置的授权系统地址。bp3授权系统一般如下图:

其中第二个步骤,一般是百度网盘授权页面并点击授权:

简要配置

经过前面的配置,你已经完成了安装、登录、以及完成授权,

这时点击一下顶部的“文件管理”,正常能获取到你的百度网盘文件列表。

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

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

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

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

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

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

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

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

定时任务与邮件(新)

从百度请求的token,默认有效期为30天,个人建议配置邮件信息,并每天刷新一次,如果刷新报错,则自动发送通知邮件,以便更好的监控 bp3 系统的正常运行,让系统更加稳定。

按照下图提示,先配置28、29、30、31、32项,33项勾选打开。(其中28~31项是邮件的发送人配置,32是收件人配置,另外33记得开启,保存完毕后点击 33 项的问好 ?,会弹出一个测试窗口,查看收件人的邮箱是否能收到发件人邮箱的测试邮件)

配置好邮件后,在 “宝塔面板” 定时任务,每天执行一次,刷新地址在帮助页面中有显示,复制改地址,例如:

然后,可以手动执行,或等待宝塔定时任务调度,你可以在日志中查看到系统的成功日志。

如果配置了邮件,邮件如果失效,也能在 temp 目录下的 refresh.log 查看到日志,例如:

更多帮助

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

错误代码:redirect_uri_mismatch?

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

新:你可以先不要研究这个东西,先使用内置app授权系统,登录后,在后台设置中22,23项修改你的app信息替换原本的app(作者它本人的),也就是应用了你的app信息啦。

我的账户被锁定了??

为了程序更安全,也更灵活,我们采用了双重登录方式。

bp3可以设置一个账户密码,这很方便,但我们担心被暴力破解,请务必绑定百度网盘账户!!

否则一旦错误3次,你就无法登录了,那么此时需要打开你的网站,编辑config.php中的user=>chance字段,并填写为3(重新赋值为3次机会,而另一个lock字段表示最大连续错误次数)

是不是很麻烦?所以推荐你绑定一个百度网盘账户,一旦bp3账户被锁定,那么使用绑定的百度账户登录,就可以解锁啦。

后台设置什么东西,这么多?

给出一些后台配置字段描述(新:点击每个设置前的?即可知晓其作用,以下介绍只有辅助作用,请在程序中查看)

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

新:bp3授权系统详细介绍

bp3有2个授权系统,分别是 免app授权系统 以及 内置app授权系统,这两个系统最终功能是一样的。

免app授权系统是默认授权系统,正规配置时就是初始化该系统,该系统需要填写appKey,appSecret以及redirectUri,但你应该明白,在程序中填写的信息需要和百度开发者平台一致。

以下从最复杂的情况描述如何接入授权:

1.申请百度开发者,并创建app,你将得到appKey和appSecret

2.在bp3的安装页面中,你将得到一个智能拼接好的回调地址(redirectUri),复制这个地址,在百度开发者平台中先点击一个app,在安全设置中,可以看到一个输入框,把地址粘贴,并保存即可。

3.完成上面2个步骤,我们发现,在程序中(后台设置6,7,8项目)、百度网盘开发者平台中,这3个信息都是一致的,这时就不会出错。(等等,我有bug??)

既然如此,为什么要有内置app授权系统?就是因为上述配置可能有bug。。

出现bug的原因,就是提示回调地址不匹配,这个问题或许和我们没有关系,但我们提供了一个解决方案,那就是无回调地址,这就是内置app授权系统

在安装界面,你无法修改内置app授权系统的信息,你只需要填写管理员账户密码即可登录,在后台设置22,23项目中把你的app对应的appKey和appSecret填写并保存即可

既然有2个授权系统,我们用哪个?又或者说两个系统我都没配置怎么办?实际上我们采用了更灵活的方式,那就是你可以使用任意url作为真正的授权地址。(等等,这是什么意思?)

在设计时,我们把授权系统取到的信息,原封不动的,甚至增加了一些字段,然后返回给调用者,对于bp3程序和授权系统耦合性很低,你可以从网络中任意一个bp3授权系统取得授权信息,而不一定需要当前系统的2个授权系统中的任意一个。

此时,你再回头看设置第17项,由它来指向当前程序使用的真正授权系统地址。

如果你有10000个程序,虽然百度开发者平台限制只有2个app,实际上你也只需要一个app就可以了,在后台“帮助”页面,复制你的授权系统地址,为新的程序接入即可,这就是整个授权系统的设计了。

这也就是为什么你能够不申请百度开发者,就能够初始化本程序的原因,主要还是使用了由作者提供的授权(每个用户都申请开发者或许并是百度开放平台的初衷,也不是我的初衷,我只是觉得如果你们申请通过了,那么就无需依赖于作者的app信息,或者哪天我的app信息改了或者被封了,你们也不会受到影响,哈哈开个玩笑,主要还是给其他开发者一个详细的介绍)。这里属实说的有点绕口了,因为我就是作者。

综上所述,6,7,8初始化免app授权系统,22,23初始化内置app授权系统,17选择本程序使用的授权系统。

授权信息失效?

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

当然,一般情况下正常使用即可,相当于无限刷新,如果站点流量非常小,请使用脚本定时抓取一下首页(不用频繁抓取,你不会真的30天也不访问一次吧???),例如宝塔面板的定时访问url功能都可以满足。

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

账户切换?

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

站点崩溃啦!

很抱歉,在一些版本中(v1.3.1版本以前)存在错误的自动刷新token函数,导致部分页面崩溃,出现问题不要惊慌。

下面介绍2种更新恢复方案:

如果你能访问/login.php,那么可以登录并在后台更新程序。

如果你无法访问任何页面,请另存config.php文件,再删掉所有文件并安装新版本,访问首页,点击选择从“配置文件”安装,导入配置文件,即可让您的站点快速恢复活力。

开发者帮助文档

作为一个开发者,上面的信息是远远不够的,但是对普通用户放太多东西并不好。

如果你希望了解得到开发者级别的帮助,请参阅:bp3开发者帮助文档 | 52的小窝 (52dixiaowo.com)

该页面记录了已发布最新版的详细说明、是每次更新需要测试的功能列表、记录了最新版本已知bug,同时记录了下个版本开发计划书,或许有一定的帮助。

其他功能或设置,请尝试自行探索或 QQ交流群:1150064636,掌握我们的最新消息。

本篇完,还有疑问?留下评论吧

bp3简易使用手册》有3条评论

  1. mingfox说道:

    大神今天试了下最新版本。好像一直无法生产config文件导致出错。加您的qq群一直没回复。

    1. zhufenghua说道:

      你好,已测试未出现bug,已同意加群,如因操作问题,可参考群文件视频搭建。

  2. StivenYang说道:

    想导出目录树,是否可以添加功能

发表评论

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