Rat's

OneIndex一键安装脚本 for Debian
说明:OneIndex很久前就介绍过了,一个目录列表程序,可以将OneDrive网盘里面的文件列出来供我们查看/下...
扫描右侧二维码阅读全文
07
2018/08

OneIndex一键安装脚本 for Debian

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

截图

请输入图片描述
请输入图片描述
请输入图片描述

功能

#以下为大致功能
缩略图功能
命令行上传功能
响应式,支持小屏设备
图片、视频、音频在线预览
代码在线查看(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

特殊文件实现功能

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、填入密码,和从临时邮箱获取的验证码
需要Office365 E3 MSDN 25(带全局管理员)的可去萌咖杂货铺购买→【点击访问
最后修改:2018 年 08 月 07 日 07 : 29 PM

发表评论

85 条评论

  1. ldy

    请问dns解析Ip与本机ip不匹配有影响吗
    另80端口被占用怎么解决啊
    谢谢

    1. Rat's
      @ldy

      影响就是安装出问题,申请SSL的时候解析IP必须与服务器一样。是不是预装了Apache程序?netstat -lnp|grep 80用这个命令看看,80被什么程序占了。

      1. ldy
        @Rat's

        tcp 0 0 0.0.0.0:6800 0.0.0.0:* LISTEN 789/aria2c
        tcp6 0 0 :::6800 :::* LISTEN 789/aria2c
        unix 2 [ ACC ] STREAM LISTENING 13800 843/systemd /run/user/0/gnupg/S.gpg-agent.browser
        unix 2 [ ACC ] STREAM LISTENING 13802 843/systemd /run/user/0/gnupg/S.gpg-agent.ssh
        unix 2 [ ACC ] STREAM LISTENING 13804 843/systemd /run/user/0/gnupg/S.gpg-agent.extra

        1. Rat's
          @ldy -端口检测有问题,我下掉端口检测,你重新运行脚本。
          1. ldy
            @Rat's

            你好 我重新运行了 还是存在端口检测

          2. ldy
            @Rat's

            你需要重新做一个安装命令吗?

            1. Rat's
              @ldy

              先删掉本地脚本,rm -rf OneIndex.sh,然后重新安装脚本。

              1. ldy
                @Rat's

                nginx.service - A high performance web server and a reverse proxy server
                Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
                Active: failed (Result: exit-code) since Mon 2018-12-03 13:29:56 CST; 1min 49s ago

                Docs: man:nginx(8)

                Process: 1365 ExecStop=/sbin/start-stop-daemon --quiet --stop --retry QUIT/5 --pidfile /run/nginx.pid (code=exited, status=0/SUCCESS)
                Process: 3281 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=1/FAILURE)
                Process: 3277 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
                Main PID: 803 (code=exited, status=0/SUCCESS)

                Dec 03 13:29:53 debian nginx[3281]: nginx: [emerg] bind() to 0.0.0.0:443 failed (98: Address already in use)
                Dec 03 13:29:54 debian nginx[3281]: nginx: [emerg] bind() to 0.0.0.0:443 failed (98: Address already in use)
                Dec 03 13:29:54 debian nginx[3281]: nginx: [emerg] bind() to 0.0.0.0:443 failed (98: Address already in use)
                Dec 03 13:29:55 debian nginx[3281]: nginx: [emerg] bind() to 0.0.0.0:443 failed (98: Address already in use)
                Dec 03 13:29:55 debian nginx[3281]: nginx: [emerg] bind() to 0.0.0.0:443 failed (98: Address already in use)
                Dec 03 13:29:56 debian nginx[3281]: nginx: [emerg] still could not bind()
                Dec 03 13:29:56 debian systemd[1]: nginx.service: Control process exited, code=exited status=1
                Dec 03 13:29:56 debian systemd[1]: Failed to start A high performance web server and a reverse proxy server.
                Dec 03 13:29:56 debian systemd[1]: nginx.service: Unit entered failed state.
                Dec 03 13:29:56 debian systemd[1]: nginx.service: Failed with result 'exit-code'.

                1. Rat's
                  @ldy

                  显示端口被占用,你还是重装系统再运行脚本吧。

                  1. ldy
                    @Rat's

                    我只安装了v2 使用了55 他们冲突是吗

                    1. Rat's
                      @ldy

                      大概是的,端口冲突。

  2. sdshdv

    一直显示SSL 证书生成失败 ,换了好几个域名解析都一样

    1. Rat's
      @sdshdv

      失败的报错信息是什么

      1. sdshdv
        @Rat's

        换了另一台VPS好了,估计是之前那台有什么软件冲突了

  3. Wicked

    [Wed Nov 7 19:00:12 CST 2018] Please add '--debug' or '--log' to check more details.
    [Wed Nov 7 19:00:12 CST 2018] See: https://github.com/Neilpang/acme.sh/wiki/How-to-debug-acme.sh
    [Error] SSL 证书生成失败
    什么意思呢`

    1. Rat's
      @Wicked

      这点错误看不出什么来

  4. minitru

    大佬,遇到个问题,域名都打得开 就是里面视频 图片都放不了。然后域名替换成ip,都能打开。但提示不安全的网页。应该是证书问题吧。也不知道怎么解决了

    1. Rat's
      @minitru

      这个不是很清楚,没遇到过。

  5. 嘿嘿嘿!

    老大,你的脚本挂了,wget 报503
    挂github不好吗

    1. Rat's
      @嘿嘿嘿!

      没挂,这两天被打了,开启5秒盾就这样了,我关掉看看

      1. 嘿嘿嘿!
        @Rat's

        现在又好了

      2. 嘿嘿嘿!
        @Rat's

        现在好了,顺便问一句,弄好了怎么下载完不会上传啊?

        1. Rat's
          @嘿嘿嘿!

          如果用的aria2的话,上传可以看看这个https://www.moerats.com/archives/697/。

          1. 嘿嘿嘿!
            @Rat's

            老大,那个一键搭建的,oneindex怎么改端口?我按ariang那样改不行,80端口我还有别的用处

            1. Rat's
              @嘿嘿嘿!

              可以看下脚本,修改下conf配置文件就行了。

  6. Jacob

    安装证书出错,还有域名怎么解析啊?提示解析的ip不符

    1. Rat's
      @Jacob

      域名都不知道解析?你在哪买的域名,就把域名添加A记录,解析到你的vps服务器,然后等片刻生效,再运行本脚本就可以了。

      1. Jacob
        @Rat's

        是啊,添加了A记录,早上添加的,到现在还是没有解析到,西部数码

        1. Rat's
          @Jacob

          你可以ping下域名,要是还不通,去检查下解析记录。

  7. db

    大佬,我用的这个,文件大小超过15G好像就上传不上

    1. Rat's
      @db

      正常,Onedrive允许的最高上传大小是15G。

      1. db
        @Rat's

        好吧~

  8. tangspoon

    大佬用了你的一键脚本,要怎么修改和在哪里修改伪静态啊?!!!!

    1. Rat's
      @tangspoon

      脚本自带伪静态,修改的话去配置文件修改,/etc/nginx/conf.d/OneIndex.conf。

      1. tangspoon
        @Rat's

        找到啦,多谢大佬。如果可以的话,希望可以更新一下添加在底部的流量统计功能哈哈哈哈

        1. Rat's
          @tangspoon

          这个自己可以添加的。

  9. cilone

    都部署完成了,但是打开域名没反应,还需要别的什么步骤?

    1. Rat's
      @cilone

      部署过程没报错么?可以看下Nginx状态systemctl status nginx,一般运行脚本不出错直到完成就算安装好了。

  10. phil

    怎么更新oneindex文件呢

    1. Rat's
      @phil

      你是说更新源码文件?这个你可以研究下网站根目录/home/wwwroot/xx.com。或者直接替换成最新源码。

      1. phil
        @Rat's

        覆盖会丢失配置文件吗?

        1. Rat's
          @phil

          貌似会,你先找到配置文件的地方,把配置文件保留下。

          1. phil
            @Rat's

            配置文件是哪几个啊

            1. Rat's
              @phil

              你去config/文件夹看看。

  11. 苏寅

    OneIndex是只能用php写吗?可以用其它语言写吗?

    1. Rat's
      @苏寅

      有个Pytho写的,地址:https://www.moerats.com/archives/734/。

      1. 苏寅
        @Rat's

        这个用Python3可以吗?Python2用的不多

        1. Rat's
          @苏寅

          Python3我没试过。

      2. 苏寅
        @Rat's

        我看了一下,这个Python安装的和php安装的有什么区别吗?可以直接在服务器上安装吗?

        1. Rat's
          @苏寅

          没多大区别,都是直接在服务器上安装。

      3. 苏寅
        @Rat's

        多谢大佬,我就是学Python的,php不太会

  12. 苏寅

    用乐享弄的这个邮箱用第三方客户端怎么登录不上去呢?一直显示密码错误,可是密码没有错误啊!

    1. Rat's
      @苏寅

      第三方邮箱可能需要进行点设置。

      1. 苏寅
        @Rat's

        我用申请的这个邮箱登录微软账号显示“该 Microsoft 帐户不存在。”是怎么回事?不是用乐享上提供的邮箱加自己设置的密码登录吗?

        1. Rat's
          @苏寅

          你申请时用的什么邮箱,就用什么邮箱登录。

  13. 苏寅

    大佬,这个5t邮箱空间怎么才能查看自己的是不是5t空间呢?还有用临时邮箱获取的365账号以后就只能用临时邮箱来登录了吗?能不能换成自己的私人邮箱登录?

    1. Rat's
      @苏寅

      貌似不能换私人。

  14. Minitru

    老哥,卡在curl开启这一步了,不知道怎么开启。求指教啊

    1. Rat's
      @Minitru

      你是说在安装界面上,显示curl不支持吗?

      1. minitru
        @Rat's

        是的,web安装界面 一个大叉

        1. Rat's
          @minitru

          你没用这个脚本吧?这个脚本安装了CURL。

          1. xia
            @Rat's

            用的就是这个一键脚本,可能是小鸡的原因。换了台装好了

            1. Rat's
              @xia

              好了就行。

              1. Minitru
                @Rat's

                大佬,好像ovz的小鸡都会报错 E: Sub-process /usr/bin/dpkg returned an error code (1) 几个必需的包都会报

                1. Rat's
                  @Minitru

                  这个我没ovz小鸡,所以可能会出现这种情况,但我感觉与架构关系不大。

  15. 纯小白

    大神,我知道我问这问题挺low的,但是我真的小白,不懂,自己win环境iis+php5.6安装oneindex,直接跳出个No input file specified.,网上的办法都试了不行,咋解决啊?

    1. Rat's
      @纯小白

      给你在网上找到2种方法。
      方法一:改php.ini中的doc_root行,打开ini文件注释掉此行,然后重启IIS。
      方法二:修改php.ini,找到; cgi.force_redirect = 1,去掉前面分号,把后面的1改为0,即cgi.force_redirect = 0,然后重启IIS。

      1. 纯小白
        @Rat's

        您说的我全都检查过了,doc_root默认就是空值,第二个也是默认就是开启,数值为0,iis重启过了,服务器都重启好几遍,还有web.config文件修改,.htaccess文件修改,通通没用,总之就是很无助啦

        1. Rat's
          @纯小白

          这个我就无能为力了,我不用Win建站,所以没研究过,也没这种环境去研究。

  16. whrs

    onedrive是不是限速了?我这好慢 几十K

    1. Rat's
      @whrs

      上个魔改BBR试试,应该不会限制,可能与你的服务器网络有关。

  17. Ares

    请输入你的OneIndex域名信息这个是什么啊?

    1. Rat's
      @Ares

      就是只要是一个域名就行,和建站一样,用来访问OneIndex界面的。

  18. mccartne

    博主,我用一个美国大学的OneDrive绑定账号,网页提示此账号是unmanage state(非托管的国家或地区)。

    1. Rat's
      @mccartne

      这个没遇到过,暂时不清楚。

  19. MarkJuruo

    这个图床的风格怎么这么眼熟,让我莫明有一种看到自己博客的亲切感。。。

    1. Rat's
      @MarkJuruo

      什么图床。

  20. chenyn

    github里边并没有base.php 脚本line199出现了base.php 导致判断下载失败.. 这个应该是脚本的问题吧..我猜

    1. Rat's
      @chenyn

      改过来了,文件很久前有,现在没了,然后之前随手把作者开始的授权要求写进去了,就没注意了。

  21. 蓝爵薇

    来个GoogleDrive的

    1. Rat's
      @蓝爵薇

      GoogleDrive可以试试这个:https://www.moerats.com/archives/593/。

  22. 瞅一瞅

    博主你的博客有源码吗

    1. Rat's
      @瞅一瞅

      程序源码为Typecho,主题是handsome。

  23. wefinger

    这玩意这需要一键脚本吗

    1. Rat's
      @wefinger

      水文章而已,有的单独安装环境还是嫌麻烦的。