YukiDrive支持Onedrive & SharePoint 文件浏览程序,支持国际版和世纪互联版。后端采用 .net core 3.1,前端使用 Vue ,前后端分离,无刷新加载。
无需搭建运行环境,下载并配置完成后直接运行。这篇文章就来说说如何利用宝塔面板来搭建YukiDrive。
1、介绍
- 项目:https://github.com/YukiCoco/YukiDrive
- 安装:https://github.com/YukiCoco/YukiDrive/blob/master/doc/Usage.md
- 作者提供的Demo:https://drive.yukino.co/
- 大鸟搭建的demo:https://oda.fdao.xyz/
- 下载:https://github.com/YukiCoco/YukiDrive/releases
2、准备
- 宝塔面板最新版本
- NGINX1.17
- 解析好的域名
- 新建一个站点(宝塔新建站点,就多说了)
3、获取 ClientId 与 ClientSecret
3.1 登录Azure:https://portal.azure.com/ 或 https://portal.azure.cn/ (世纪互联)
3.2 点击 Azure Active Directory / 应用注册 / 新注册
3.3 名字任意取,账户类型为 任何组织目录(任何 Azure AD 目录 - 多租户)中的帐户
,重定向URL为 https://你的域名/api/admin/bind/new
3.4 点击 概述,记录应用程序(客户端)ID,即为 ClientId
3.5 点击 API 权限 / 添加权限 / Microsoft Graph / 委托的权限。勾选 Files.ReadWrite.All
和 Sites.ReadWrite.All
图示只勾选了 一个,Sites.ReadWrite.All
如法炮制。
3.6 点击 证书和密码 / 新客户端密码,创建密码并记录为 ClientSecret
4、部署
4.1 新建站点
- 创建网站,设置为纯静态。
- 绑定域名并申请证书,开启 https
4.2 下载YukiDrive
下载程序到网站根目录。目前的最新版本下载地址:
https://drive.yukino.co/api/files/onedrive/YukiDrive/WebApi/1.1.1/YukiDrive-1.1.1-linux-x64.zip
下载之后解压。宝塔如何在面板解压略过。
4.3 配置 appsettings.json
从解压后的文件目录中找到 appsettings.json 并修改。宝塔面板的的配置如下:
{ "Logging": { "LogLevel": { "Microsoft": "Warning", "Microsoft.Hosting.Lifetime": "Information" } }, "AllowedHosts": "*", "ConnectionString": "Data Source=YukiDrive.db;", "ClientId": "刚刚面申请到的客户id", "ClientSecret": "客户密钥", "ListeningUrls": "http://*:1273", "Certificate" : { "Enable" : false, "FilePath" : "", "Password" : "" }, "BaseUri":"你的域名", "Proxy":"", "Type":"Global", "AccountName": "你的 Office账户名", "DominName": " SharePoint 域名", "AdminName" : "网站后台的账户", "AdminPassword": "网站后台的密码" }
宝塔修改的备注:
ClientId
与ClientSecret
填写在上一步所得值ListeningUrls
和Certificate
与 https 证书有关,下一步再讲BaseUri
修改为你的域名,有端口必须带上端口号,必须使用 httpsType
为你的 Office 账户地区,可选择为
China
世纪互联Global
国际版
AccountName
为你的 Office账户名,如:Sakura@yukistudio.onmicrosoft.com
DominName
为你的 SharePoint 域名,登录 SharePoint 就能在浏览器地址栏看到,如:yukistudio.sharepoint.com
AdminName
和AdminPassword
为网站后台的账户和密码、- 删除
ListeningUrls
下的https://*:1272
- 将
Certificate
的Enable
修改为false
4.4 网站配置文件修改
删除网站配置文件如下代码:
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ { expires 30d; error_log off; access_log /dev/null; }
4.5 网站目录修改
在网站设置→网站目录 中修改网站目录为:
/www/wwwroot/你的域名/YukiDrive/wwwroot
修改之后保存。
4.6 设置反带
宝塔面板设置反带,网站设置→反向代理按照如图设置:
4.7 启动程序
配置完成后,跳转到程序目录执行 ./YukiDrive
就开始运行了。
4.8 效果
浏览器中域名打开即可访问,未绑定之前直接访问域名会显示 出现错误:undefined 不必理会。
5、启动并登录后台绑定账户
5.1 绑定账户
请先确认站点的 https 可用再进行下一步操作。
在浏览器中访问 https://你的域名/#/login
登录,进入后台后找到 SharePoint 账户,点击认证后登录你的微软账户。认证完成后会跳转回后台,此时将会显示为已认证。
认证和安装oneindex基本差不多,输入账号密码登录授权即可,丢一张图。
5.2 Centos 7.x 认证后跳转回调地址出现 500
解决方案:
查看 OPENSSLDIR 路径 $ openssl version -a 然后把 CentOS 默认的 openssl CA证书拷贝过来。$ cp /etc/pki/tls/cert.pem /usr/local/openssl/
6、添加 Onedrive
点击添加站点,站点名称填写为 onedrive ,显示名随意。
图示是已经添加好的之后效果。我们回到首页,即可看到效果,如图:
可以直接上传文件。
7、守护程序进程
在 Linux 上的程序仅运行于本地账户,退出即关闭,应该将其注册为服务以便能够开机自启和出错重启,做一些修改后复制下列整条语句到控制台执行!宝塔面板安装设置的代码如下:
7.1 启动服务
systemctl enable YukiDrive.service systemctl start YukiDrive.service
7.2 查看服务状态
systemctl status YukiDrive.service
显示以下语句即为正常运行,如图:
7.3 退出服务
systemctl stop YukiDrive.service
8、添加SharePoint
首先说说sharepoint添加站点,这里简单说说。
7.1 SharePoint 创建网站
登录:https://www.office.com/
登录之后,选择sharepoint,如图:
登录之后,创建网站,如图:
根据需要创建网站,记住站点名称。
7.2 后台设置
点击添加站点,站点名称填写为 SharePoint 创建网站时所填写的站点名称(建议创建为英文字符),显示名随意。
提交成功后的效果截图:
7.3 前台效果
8、最后
YukiDrive的常规安装非常繁琐,喜欢尝鲜的可以试试,不过这个ui我到是挺喜欢的,而且功能也非常不错。支持图片和视频的预览和在线播放。主要特点如下:
- .Net Core 多线程高并发
- 前后端分离,无刷新加载
- 可挂载 OneDrive 和任意多个 SharePoint 站点
- 提供文件上传 CLI
- 上传文件
- 无大小限制
- 由 浏览器&CLI 直接对微软服务器上传,不消耗流量

1F
自己做个沙发,这个没人玩?[吃瓜……]
2F
为什么认证不了,看看代码
3F
认证失败
登录
抱歉,登录时遇到问题。
AADSTS50011: The reply URL specified in the request does not match the reply URLs configured for the application: ’02e1db41-d4d7-4c34-a682-cd0fd36d87d3′.
B1
@ mickey 我也是卡在这一步 每一个步骤都检查过没有遗漏. 网上也没有找到什么好办法
4F
认证失败
登录
抱歉,登录时遇到问题。
AADSTS50011: The reply URL specified in the request does not match the reply URLs configured for the application: ’02e1db41-d4d7-4c34-a682-cd0fd36d87d3′.
B1
@ 单独 额,没设置好。感觉应该是重定向url没设置好。
5F
站点绑定提示找不到 SharePoint
6F
有点复杂
7F
在 Linux 上的程序仅运行于本地账户,退出即关闭,应该将其注册为服务以便能够开机自启和出错重启,做一些修改后复制下列整条语句到控制台执行!宝塔面板安装设置的代码如下: 这个在宝塔面板咋操作?
8F
有点复杂,正在学习
9F
教程详细啊,已经搭建成功了,感谢!
10F
成功安装,看看代码
11F
感谢大佬分享教程,已经搭建成功了
12F
请问一下 我到设置反向代理这一步 卡了 不使用反向代理 能显示网页但是登录显示错误 若使用反向代理 出现 界面是 目前无法处理此请求
13F
谢谢你的教程
14F
点击认证的时候,提示该网页无法正常运作是什么问题啊。根本不弹出登录授权界面
15F
搞定了,就是因为证书问题导致的
16F
来学习一下
17F
前来学习!
18F
认证失败

19F
开心可惜没有防盗链和目录加密
20F
感谢博主,试试这个列表!!
21F
看着有点啰嗦啊,不过还是试试!!
22F
感谢分享
23F
感谢分享
24F
大神有个问题想问问,这个用什么数据库啊,db还是mysql,还是用json报文,不然备份数据很麻烦。
25F
部署完成了
26F
过来看看
27F
看一下