前言
搭建oneindex、pyone等onedrive目录程序的教程网上超级多,为什么我还要水写这一篇文章呢?因为最近收了office“传家宝”,可能要开个自己的小卖铺,提前做个准备。其实只是为了水一篇文章表示这个辣鸡博客还活着。
这里讲两种搭建方法和onedrive绑定过程
- 网站直接运行
- docker方式运行
- onedrive绑定授权
方法一
1.1 新建网站
进入宝塔面板,点击左侧网站
新建一个网站,输入自己的域名
或者ip
即可建立网站,这个是以后访问自建的网盘的的网址。
1.2 设置伪静态
点击网站名
,在弹出的窗口里再点击伪静态
,输入以下内容并保存。
location / {
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;
}
}
1.3 添加oneindex源码
上传oneindex
源码到网站根目录/www/wwwroot/xx.com
,将文件解压出来,并设置config/
、cache/
可读写权限。
这里的/www/wwwroot/xx.com
即是之前建立的网站的目录,比如我建立的是yun.boilog.com
,目录即是/www/wwwroot/yun.boilog.com
。
1.3.1 方式一:命令行操作
在终端下按情况输入
#Debian/Ubuntu系统
apt-get install git -y
#CentOS系统
yum install git -y
#修改为自己域名根目录后再运行
cd /www/wwwroot/xx.com
#作者已删除源码
#git clone https://github.com/donwa/oneindex.git
#这里选用其他大佬Fork的
git clone https://github.com/avedu/oneindex.git
#改用fork备份的,文件夹名已更改,废弃
#mv oneindex/* ./
mv oneindex-master/* ./
chmod -R 775 config/ cache/
#或者直接下载备份的版本,同样来自@avedu大佬的fork
#Debian/Ubuntu系统
apt-get install wget -y
#CentOS系统
yum install wget -y
#修改为自己域名根目录后再运行
cd /www/wwwroot/xx.com
#下载本站备份源码
wget https://www.boilog.com/usr/down/oneindex-master.zip
#解压并更改文件夹用户组
unzip oneindex-master.zip
chown -R www:www ./oneindex-master
chmod -R 755 ./oneindex-master/
#移动文件
mv oneindex-master/* ./
#更改文件夹权限
chmod -R 775 config/ cache/
1.3.2 方式二:在面板直接操作
宝塔面板下直接点击网站管理页面的目录路径可直接跳转。
点击工具栏上的远程下载,添加下载
oneindex
源码。下载链接:
#作者已删除#https://github.com/donwa/oneindex/archive/master.zip
#选用备份
https://github.com/avedu/oneindex/archive/master.zip
#或者
https://www.boilog.com/usr/down/oneindex-master.zip
等待下载完成,解压下载的文件。打开解压文件夹,将解压的文件剪切到网站根目录下。
然后将
config
、cache
这两个文件夹的权限设置为775
原本设置的是777,但是不安全,改成775了1.3.3 阶段步骤结束
最后打开之前设定的域名(例yun.boilog.com)进行绑定OneDrive了,按网页提示操作即可。以后管理网站的后台地址是:http://xx.com/?/admin
,默认密码:oneindex
。如果你想给域名加上https
安全访问,可以通过域名设置配置一下SSL证书。
方法二
2.1 安装docker管理器
在宝塔面板的软件商城
安装Docker管理器2.0
2.2 添加docker镜像
打开Docker管理器2.0
点击获取镜像
在官方库中输入以下内容并获取镜像。
yinaoxiong/oneindex
2.3 创建容器
下载完毕之后我们来到容器列表
进行创建容器。
选择需要的镜像。由于项目页面中没有要求映射必要的文件夹,所以我们只要映射容器的80端口到我们VPS的任意端口
即可。
注意:
这个端口需要已经放行,比如阿里云等需要在控制台先放行。
这里我设置为12306
端口,按照下图进行设置,内存配额
和cpu权重
按需修改,我这个小鸡带了好几个网站,感觉都扛不住了。
点击提交之后,我们测试访问
IP:12306
(自定义的任意端口号)查看成功了没有。如果所有环境监测都是OK的,然后进行安装就行了。
2.4 反向代理
通过设置反向代理来实现访问域名直接进入oneindex
。
点击面板中的网站
新创建一个网站。并且配置好伪静态,如本文步骤1.1
、1.2
所示。
注意:
这里PHP版本如果选择纯静态,可以在你OneIndex设置中去除掉网址中的/?/而不需要配置伪静态。
创建好之后我们进入网站设置,切换至反向代理面板。点击添加反向代理
- 代理名称:任意
- 目标URL:http://127.0.0.1:12306(自定义的任意端口号)
- 发送域名:留空或填写进行访问的域名
点击提交即可完成反向代理。
2.5 阶段步骤结束
最后打开之前设定的域名(例yun.boilog.com)进行绑定OneDrive了,按网页提示操作即可。以后管理网站的后台地址是:http://xx.com/?/admin
,默认密码:oneindex
。如果你想给域名加上https
安全访问,可以通过域名设置配置一下SSL证书。
onedrive授权
3.1 获取应用ID & 机密
首次访问搭建好的oneindex
需要绑定onedrive
授权。
按提示获取应用ID
和机密,
点击
蓝色链接
跳转并登录onedrive账户
获取应用机密,将其复制粘贴到对应框下然后点击蓝色的
Go it,take me to the quick start
获取应用ID
获取应用ID
后,将其复制粘贴到对应框下
注意:
- 当我们获取到带
+
号的密匙时候,我们需要使用编码符号,把+
改成%2B
- 如果网站没有添加ssl证书,而是以http方式访问的话,会通过ju.tn进行中转,在绑定授权的时候会有个小问题,具体看后文。
点击下一步,再点击绑定账号
点击
Accept
接受绑定3.2 注意事项
需要注意的地方来了
前面有提示会通过ju.tn进行中转的
会出现无法访问的现象
https://ju.tn/
换成
https://oneindex.github.io/
采用更好的方法,直接修改网站目录下源码controller
文件夹下的AdminController.php
的186行$redirect_uri
后面的域名为自己之前设置的域名即可。
#186行原始内容如此所示
$redirect_uri = 'https://oneindex.github.io/';
跳转域名就变成设置的域名了。
就可以绑定成功了,提示程序安装成功
,oneindex
的安装就大功告成了。
文章参考来源: