文章方案来源《手动修改Oneindex适配由世纪互联运营的国内版Office 365》感谢滑稽大佬的修改和分享
#更新&须知
Ⅰ、Azure AD UI更新
Azure AAD注册应用更新了新版的UI,本文文字教程暂不打算更新,下面提供了视频记录了新版的安装流程。另外本程序较老,基于Oauth
接口的OneIndex V2
稳定性已经不如OLAINDEX,推荐使用OLAINDEX或其他基于Microsoft Graph
接口的应用,其中应用注册流程与本文一致。
Ⅱ、【您请求的页面暂时不可用】的解释
目前淘宝上售卖的世纪互联账号属于世纪互联教育计划的免费套餐(淘宝售卖是一定程度上违反世纪互联的意图的),且全网售卖的所有账号均在vipmail
这一个全局下面,可能是由于OneIndex或者OLAINDEX的滥用导致该全局触发了API保护机制或者是世纪互联对于此全局进行了API限制导致无法通过sharepoint访问OneDrive文件。出现此问题如需继续使用请自行寻找一个新全局或转战国际版,同时感谢@氯化娜 赠送Luminous的世纪互联账户。对于世纪互联的账户,API请求数不要超过10次每分钟。
世纪互联的一个分销天鸣科技赠送送免费的1T Office365 E3订阅,一般申请后一个月答复,后缀@officecommunity.cn
,点此填表申请。
#正版购买链接:https://www.21vbluecloud.com/office365/pricing/
#唯一登陆地址:https://portal.partner.microsoftonline.cn/
其中32元/月及以上的套餐包含1T的OneDrive储存空间(可自行扩容至5T,文档参考点击前往),确有所需建议支持正版;此外重要警示:淘宝@od365.cn
/@5tb.eu
的所谓世纪互联账号是使用国际版修改logo伪造的,请勿购买!
Ⅲ、OneIndex修改优化版
OneIndex V2世纪互联版由@lzx8589561大佬魔改后支持了后台功能,同时也不必再手动修改参数进行安装,安装流程与V3相同!推荐使用进行安装。
GitHub项目地址:https://github.com/lzx8589561/oneindex2-in
DEMO:https://pan.ilt.me
其中配置参数世纪互联前缀参考教程中3.2
,https://xxx-my.sharepoint.cn
填写红色部分;AzureAD配置参考教程中一、配置Azure AD 应用程序
,其中1.2
中登录URL填写你的OneIndex的访问地址即可,其他操作一致。
#注意
①请将网站文件设置权限为755,且所有者为www
②有时候因为浏览器缓存你填入的信息刷新后并没有显示在文本框内,请换个浏览器绑定
③由于微软API授权有效期限制,每三个月您需要重新注册应用并绑定(推倒重来)
④安装操作无误依然可能出现“程序安装失败”提示,请删除并重建应用然后重新尝试绑定(应用建立完成后建议稍等1-2分钟再执行绑定操作)
#NGINX伪静态规则
1 2 3 4 5 6 7 8 9 |
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?/$1 last; } |
Ⅳ、安装全程视频记录(新版UI)
零、序曲
之前偶然在论坛上发现了OneIndex这个工具(GitHub项目地址),可以将微软OneDrive网盘中文件直链到前端网站,作为图床和视频源简直是天上掉下来的馅饼啊,于是我成功使用OneIndex V3搭建了自己的第一个站点。
国际版的OneDrive从国内访问走微软香港节点,上下行速度能够跑满笔者的50Mbps宽带。但是在高峰期的响应速度和上下行的稳定性都不尽如意……于是我想到了国内版的OneDrive……然而这是一个无底神坑……
首先当然是想到和国际版一样,看到index.php里有两行注释,以为去掉就行了,然而并不是这样……在loc的帖子下滑稽大佬和donwa大佬的对话中可以看到V3就算改了API地址也最终会AADSTS50001错误
#报错信息
抱歉,登录时遇到问题。
AADSTS50001: The application named https://graph.microsoft.com was not found in the tenant named 8133f233-07f6-4027-9358-f31f29c38e97. This can happen if the application has not been installed by the administrator of the tenant or consented to by any user in the tenant. You might have sent your authentication request to the wrong tenant.
最终在loc找到了滑稽大佬修改版的OneIndex,经过一番周折终于成功绑定。由于之前尝试在服务端绑定失败了,这里只记录如何在本地绑定(localhost),但是实际上把2.2中创建AAD时的链接http://localhost替换为你的网站域名然后在服务端绑定是完全可以的,这样可以略过第二步搭建本地环境。
一、配置Azure AD 应用程序
国内版AAD应用程序没有国际版那种一键生成的工具,所以需要手动配置
1.1 Azure控制台
1.2 注册应用
依次点击【Azure Active Directory】选择【应用注册】,再点击【新应用注册】
创建应用界面参数如图填写,然后点击创建
1.3 授予SharePoint权限
如图,进入程序主页,点击【设置】-【所需权限】
如图中123配置好授权,然后保存。不要忘了保存之后再回到所需权限页面点击一下【授予权限】
1.4 获取应用程序ID和密钥
点击密钥,描述随意填写如【sample】,有效时期一定要选【1年内】,不然会出现无授权的现象。点击保存,【值】选项下会出现一串密钥,即AAD密钥,复制到记事本保存
在应用程序主页,我们可以看到【应用程序ID】,如图点击复制,复制到记事本保存
至此,应用注册已经完成
二、配置本地WAMP环境
笔者使用的程序是WAMP Sever 下载地址
安装时请指定安装目录到一个方便访问的地方。其他本地环境搭建请自行百度,此处不再赘述。
三、配置OneIndex修改版参数
由于V2不支持在网页端填入数据,我们需要手动进行参数填充
3.1 部署文件
首先删除WAMP Sever安装目录wamp下www文件夹中全部文件,将附件【oneindex21vianet.zip】解压到该目录
3.2 修改/config/base.php
php文件修改推荐使用【Notepad++】(下载地址),切记不能使用记事本编辑
如图填入你的应用ID和密钥,redirect_url填写【http://localhost】,点击保存。注意粘贴的时候不要把两边分号删掉,也不要留下空格。
3.2 修改/lib/onedrive.php
首先去世纪互联Office365主页(点击进入),登陆后选择OneDrive
把这个链接蓝色部分复制下来(这个链接不同的账户是不同的),用NPP打开/lib/onedrive.php
转到第30行,将复制的地址【https://(xxx)-my.sharepoint.cn/】填进去,记得末尾【/】不可删去,否则会无法读取文件。注意粘贴的时候不要把两边分号删掉,也不要留下空格。示例如下图。
至此,参数配置已完成
四、绑定账户
确保右下角WAMP Sever图标绿色的状态下,浏览器访问http://localhost
点击绑定账户,根据指示进行登录,完成后会清除浏览器缓存可以看到OneIndex已成功获取并显示文件列表,在这里你就可以将wamp/www文件夹下所有文件打包上传到你的服务端了。
五、问题及其他配置
5.1 Admin后台无法进入
笔者不知道是哪里的问题始终无法进入OneIndex的管理后台,鉴于后台没什么卵用就不作处理了(其实我也没法处理)
5.2 设置Corntab定时刷新
*/10 * * * * php /你的网站目录/one.php cache:refresh
指令如上,配置方式请自行百度,此处不过多讲解(如果使用宝塔等面板在计划任务里添加shell每六小时执行一次【php /你的网站目录/one.php cache:refresh】即可)
5.3 修改网站名称
打开根目录index.php
将如图所示【one】改成你想要的名字即可
以上是笔者在搭建的流程,希望对各位和笔者一样的萌新有所帮助
忘了给修改版OneIndex下载链接了 点击下载
*修改版oneindex及修改方案由hostloc【滑稽】大佬提供,在此表示感谢
*原创教程,转载请注明出处(包含本站及hostloc的方案源)
博主,想问一下,配置Azure AD 应用程序这一步,给权限的时候Microsoft Graph和SharePoint这两个有什么区别呢。看到有的教程给的Graph,有的教程给的SharePoint。
oauth
接口那么要授予Sharepoint
权限,如果是Graph
接口就是授予MS Graph
权限,前者历史比较久了很少有在用的了,较新的都是应该授予Graph
权限。我OneIndex挂了1年了没理了,然后有人推荐我用OneManager-php,可惜页面太复古了。好处就是应用ID与机密不用自己申请,可以使用自带的,当然也可以自己填,不然1-2年更新一次机密key有点麻烦。
https://github.com/qkqpttgf/OneManager-php
感觉FODI挺好用。例子pan.yoyling.com。另外博主的评论加个分页好点0.o
博主最新版可以在哪里下载?急需
上面的内容下载不了
考古()
补充一下,用powershell修改容量,在登录时的命令为Connect-SPOService -Url https://$orgName-admin.sharepoint.cn -Region China 很多网上的教程均缺失-Region China导致登录失败
博主,麻烦问下,你的https://cnone.lty.fun/home,用的试哪个版本的OLAINDEX文件哈
Litera
即可似乎OneDrive还可以挂载到Linux的虚拟文件系统,然后直接软链接到网站目录下的子文件夹,不过我没有试过… rclone这个项目star数也蛮高的
大佬,我在进行步骤四绑定账户的时候显示: localhost 拒绝了我们的连接请求。这该怎么办呀
一进你的站点风扇狂飙233333早点看到就直接去搞个天鸣科技的了,网上买的还是怕翻车
请问可以上传吗?
请问我在文件夹下放了.password文件后,在网页输入密码会一直循环输入密码界面,不跳转到文件夹怎么办?
请问那个扩容至 5T 的方法,是不需要什么条件就可以的吗?
测试了下修改版oneindex用不了了,已经转战olaindex