Rat's Blog

OneIndex一键安装脚本 for Debian

当前页面是本站的「Google AMP」版。查看和发表评论请点击:完整版 »

说明:OneIndex很久前就介绍过了,一个目录列表程序,可以将OneDrive网盘里面的文件列出来供我们查看/下载,而且并不会消耗服务器的流量和空间,很是强大,之前该程序只适用于OneDrive Business账号,很多人不知道怎么搞,博主也没怎么在意,现在已经支持OneDrive个人账号了,估计很多人会用到,这里为了让部分小白快速上手,这里就整了个一键脚本,如果你不喜欢脚本或者服务器已有Web网站环境,可参考教程:OneIndex安装教程,进行手动安装。

截图



更新

【2018.12.30】
修复重定向次数过多的问题,现已修复(这个抱歉,忘记在脚本里注释部分$,导致出了点小问题)。
【2018.12.22】
替换伪静态规则,调整缓存刷新时间
【2018.12.21】
修复一点小问题,并增加定时刷新缓存和token,并优化脚本步骤信息的提示

功能

#以下为大致功能
缩略图功能
命令行上传功能
响应式,支持小屏设备
图片、视频、音频在线预览
代码在线查看(js、css、html、sh、php、java、md等)
README.md支持,解析各目录下(onedirive目录下)README.md文件,在页面尾部展示。
HEAD.md支持,在页面头部展示
.password文件夹加密
在线视频播放器替换成Dplayer
在线视频播放支持mp4、webm,avi、mpg、mpeg、rm、rmvb、mov、wmv、mkv、asf。
cli文件夹上传(单线程)
不同后缀展示设置
文件直接输出
文件上传管理(后台)
图床功能

安装

Github地址:https://github.com/donwa/oneindex

系统要求:脚本只适用于Debian 8、9,且无网站环境,会自动签发Let's Encrypt SSL证书,请提前将域名解析至VPS服务器。

运行命令:

wget https://www.moerats.com/usr/shell/OneIndex.sh && bash OneIndex.sh

安装完成后,打开域名,按照提示进行安装配置。



后台地址:https://xx.com/?/admin,默认密码:oneindex,网站根目录/home/wwwroot/xx.com

提示:这里好几个同学反映进不去后台,博主看了下原因,顺便再说下,安装好了后,需要先访问自己的域名,然后绑定OneDrive账号了才能访问后台,不然是进不去后台的!

绑定OneDrive后建议先访问后台,如果前台出现HTTP ERROR 500的情况,可以重新下载源码后再绑定账号,使用命令:

#将domain.com改成你的域名再运行以下命令
cd /home/wwwroot/domain.com
rm -rf ./*
git clone https://github.com/iiiiiii1/Oneindex.git
mv oneindex/* ./
chmod -R 777 config/ cache/

特殊文件实现功能

README.mdHEAD.md、.password特殊文件使用。

#在文件夹底部添加说明
在onedrive的文件夹中添加README.md文件,使用markdown语法。

#在文件夹头部添加说明  
在onedrive的文件夹中添加HEAD.md文件,使用markdown语法。  

#加密文件夹
在onedrive的文件夹中添加.password文件,填入密码,密码不能为空。 

#直接输出网页
在onedrive的文件夹中添加index.html文件,程序会直接输出网页而不列目录,配合文件展示设置-直接输出效果更佳。

命令行功能

仅能在php cli模式下运行,且以下命令均在网站根目录/home/wwwroot/xx.com运行。

#清除缓存 
php one.php cache:clear

#刷新缓存 
php one.php cache:refresh

#刷新令牌:  
php one.php token:refresh

#上传文件  
php one.php upload:file 本地文件 [onedrive文件]

#上传文件夹
php one.php upload:folder 本地文件夹 [onedrive文件夹]

上传示例:

#上传demo.zip 到onedrive 根目录  
php one.php upload:file demo.zip  

#上传demo.zip 到onedrive /test/目录  
php one.php upload:file demo.zip /test/  

#上传demo.zip 到onedrive /test/目录并命名为 d.zip  
php one.php upload:file demo.zip /test/d.zip  

#上传up/ 到onedrive /test/  
php one.php upload:file up/ /test/

获取OneDrive 5T网盘

如果我们使用个人版网盘的话,容量好像不够,这时候我们就可以使用OneDrive Business账号了,总共有5T容量,如果你有钱可以直接去官网买,没钱就可以使用方法免费获取了,这里推荐如有乐享博客分享的获取OneDrive 5T网盘的方法,查看:申请OneDrive 5T 网盘便民方法和邮箱

申请方法大致流程:

1、进入注册地址https://products.office.com/en-us/student?tab=students
2、输入如有乐享提供的临时邮箱
3、填入密码,和从临时邮箱获取的验证码

如果SSL证书过期,这里给个更新命令:

#修改为你的域名
domain="www.moerats.com"
service nginx stop
~/.acme.sh/acme.sh --issue -d ${domain} --standalone -k ec-256 --force
~/.acme.sh/acme.sh --installcert -d ${domain} --fullchainpath /home/wwwroot/ssl/OneIndex.crt --keypath /home/wwwroot/ssl/OneIndex.key --ecc
service nginx start