OpenWrt 使用 KodExplorer (可道云) 搭建私有云存储

随着国内网盘一家接一家的倒闭,用户可以放心使用的网盘越来越少了,目前可以放心使用的好像只有百度和腾讯了,不过都存在种种限制。

如果你只是想单纯的存储、管理文件,私有云可能是一个不错的解决方案。

VPS 搭建私有云成本太高,NAS 方案一般小伙伴也不愿意折腾,随着路由器性能越来越高,在路由器上搭建私有云存储,成为了很多小伙伴的选择。

今天教大家在 OpenWrt 路由器使用 KodExplorer 来搭建私有云存储。

KODExplorer

准备工作

既然是私有云,肯定需要存储设备,最好用移动硬盘这种大容量设备,分区格式推荐为 ext4,如果你的固件 NTFS 速度快的话,无所谓,ext4 格式化方法可以看《斐讯 K3 LEDE 安装迅雷远程下载》中的步骤。

可用空间 8M+  内存 128M +

最后,一颗不怕死的心,因为步骤稍微有点复杂。

搭建 Web 环境

首先,搭建 Web 环境,这里我们使用:Nginx + PHP 。上传、修改文件推荐使用 WinSCP 进行操作,如果你熟练使用 VI 等编辑器,无所谓,还有,SSH 连接好。

Nginx

软件包搜索 nginx 并安装,安装完成后输入 nginx -v 返回 Nginx 版本号即安装成功。

Nginx 和 uhttpd 都是80端口,所以需要改下其中某个服务的端口。

Nginx:修改文件:/etc/nginx/nginx.conf,大概第36行,listen 80; 将 80 改为其他端口 (1 – 65536)。

uhttpd:修改文件:/etc/config/uhttpd,第3行和第4行,list listen_http '0.0.0.0:80' list listen_http '[::]:80' 将 80 改为其他端口(1 – 65536)。

如果改了 uhttpd 端口,输入 /etc/init.d/uhttpd restart 重启 uhttpd。

不是80端口的服务访问地址需要在路由器IP后面加端口,比如:192.168.1.1:8080

输入 mkdir -p /mnt/sda1/www 创建 Web 目录,路径根据你存储设备挂载路径自行更改。

修改文件:/etc/nginx/nginx.conf

第1行 user nobody nogroup; 改为 user root root;

大概第44行,将 root html; 改为 Web 路径,示例:root /mnt/sda1/www; ,接着修改下一行:index index.html index.htm index.php;

大概第65行,去掉注释,为 Nginx 配置 PHP。

location ~ \.php$ {
root /mnt/sda1/www; # Web 目录路径
try_files $uri =404; # PHP 文件不存在返回404
fastcgi_pass unix:/var/run/php7-fpm.sock; # 通过 Unix 套接字执行 PHP
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; # 修复 Nginx fastcgi 漏洞
include fastcgi_params;
}

PHP

软件包搜索 php7-fpm 并安装,安装完成后输入 php-fpm -v 返回 PHP 版本号即安装成功。

安装所需 PHP 模块,软件包:php7-mod-curl php7-mod-gd php7-mod-iconv php7-mod-json php7-mod-mbstring php7-mod-opcache php7-mod-session php7-mod-zip,比较多,用命令安装吧:opkg install php7-mod-curl php7-mod-gd php7-mod-iconv php7-mod-json php7-mod-mbstring php7-mod-opcache php7-mod-session php7-mod-zip

安装 PHP 所需时间数据库,软件包:zoneinfo-asia

修改文件:/etc/php.ini

;open_basedir = 去掉注释并改为存储设备路径 + :/tmp/:/proc/ 示例:open_basedir = /mnt/sda1/:/tmp/:/proc/

memory_limit = 8M 改为 memory_limit= 20M 如果你的设备内存较大的话,可以适当增加。

注释 doc_root = "/www" ( 前面加一个分号 ; )

upload_max_filesize = 2Mpost_max_size = 8M 改为 upload_max_filesize = 12Mpost_max_size = 12M 该值不能大于 memory_limit 且 upload_max_filesize 不能大于 post_max_size

修改文件:/etc/php7-fpm.d/www.conf

user = nobody 改为 user = root

;listen.mode = 0666 去掉注释

;listen.allowed_clients = 127.0.0.1 去掉注释

修改文件:/etc/init.d/php7-fpm

PROG=/usr/bin/php-fpm 改为 PROG="/usr/bin/php-fpm -R"

输入echo "<?php phpinfo(); ?>" > /mnt/sda1/www/info.php 创建 PHP 调试文件,/etc/init.d/nginx restart;/etc/init.d/php7-fpm restart 重启 Nginx 和 PHP-FPM,浏览器访问 Nginx/info.php,比如:192.168.1.1:8080/info.php,输出 PHP 信息即为配置成功。

PHP

Web 环境配置完成,接下来安装 KodExplorer。

KodExplorer

前往 https://kodcloud.com 下载 KodExplorer 并上传路由器,输入 unzip 压缩包路径 -d Web目录路径 解压,比如:unzip /mnt/sda1/www/kodexplorer.zip -d /mnt/sda1/www/ ,如果提示找不到命令:unzip,安装 unzip 软件包即可,也可以解压后再上传。

浏览器访问 Nginx 设置 KodExplorer 管理员密码,设置完成后即可登陆。

KodExplorer 特色

完善的文件管理功能,完美取代 FTP,像使用操作系统一样的体验。

在线预览,几乎支持所有格式的在线预览,图片、音乐、视频、文本等等。

支持多用户、分组权限管理。

强大的代码编辑器,几乎支持所有语言代码的在线编辑,代码高亮、自动补全、多标签、Zend Codeing 支持。

KODExplorer 登录

KODExplorer 文件管理

KODExplorer 代码编辑器

KodExplorer 我个人觉得还是可以的,虽然不支持文件同步,不过也有很多特色功能,比如代码编辑器、多种文件格式预览,而且不依赖于数据库,对硬件要求较小。

KodExplorer 使用中遇到任何问题,可前往官网论坛寻找答案。

最后说几句

为什么用 KodExplorer?

开始是想搭建 ownCloud,但遇到点问题。

opkg 源的 MySQL 版本太旧,ownCloud 最新版本需要 5.5 +,虽然 PostgreSQL 可以用,但是太耗性能,如果使用旧版本 ownCloud 可能不兼容 PHP7,所以选择了 KodExplorer。

Web 环境有问题的话,留言给我。

微信公众号二维码

微信扫描二维码关注我们

点赞

  1. bigwit说道:

    :razz:
    软件源里面没有php5-fpm怎么办?
    我的是下载宝!现在卡在这里了!

    MIUI Browser 9.5.9 MIUI Browser 9.5.9 Android 7.0 Android 7.0
    1. 小山说道:

      找其他的 php-fpm,比如:php7-fpm

      Google Chrome 66.0.3359.139 Google Chrome 66.0.3359.139 Windows 10 x64 Edition Windows 10 x64 Edition
      1. bigwit说道:

        我都配置好了,nginx也起来了,但是访问显示404

        Google Chrome 63.0.3239.132 Google Chrome 63.0.3239.132 Windows 10 x64 Edition Windows 10 x64 Edition
        1. lirang说道:

          我也是下载宝,你在哪里找到的php-fpm?

          Google Chrome 55.0.2883.87 Google Chrome 55.0.2883.87 Windows 10 x64 Edition Windows 10 x64 Edition
      2. bigwit说道:

        [30-Apr-2018 13:28:15] NOTICE: PHP message: PHP Warning: PHP Startup: zip: Unable to initialize module
        Module compiled with module API=20100525
        PHP compiled with module API=20131226
        These options need to match
        in Unknown on line 0

        启动php,报了一堆这个警告,我安装的是php5

        Google Chrome 63.0.3239.132 Google Chrome 63.0.3239.132 Windows 10 x64 Edition Windows 10 x64 Edition
      3. bigwit说道:

        上面那条删了吧,我发现有个地方写错了
        现在,phpinfo能显示,但是,装上kod之后,打开就是一片白色的,什么都没有

        Google Chrome 63.0.3239.132 Google Chrome 63.0.3239.132 Windows 10 x64 Edition Windows 10 x64 Edition
  2. 说道:

    :cry: 大神救我,我按照教程,最后可以打开192.168.1.1:8088/info.php看到php配置信息,但是输入192.168.1.1:8088/index.php却看不到可道云,屏幕是空白的,怎么处理啊。随便输入192.168.1.1:8088/fasdfa,可以看到404 Not Found nginx/1.12.2

    Firefox 58.0 Firefox 58.0 Windows 7 x64 Edition Windows 7 x64 Edition
    1. 小山说道:

      加群,然后私聊我截图

      Google Chrome 64.0.3282.186 Google Chrome 64.0.3282.186 Windows 10 x64 Edition Windows 10 x64 Edition
  3. firestarter说道:

    确实不错的教程 mark一下

    Firefox 58.0 Firefox 58.0 Android 7.1.1 Android 7.1.1
  4. lioil说道:

    請問kodexplorer在打包整個文件夾下載時 壓縮後中文名稱會亂碼 該如何解決

    Internet Explorer 11.0 Internet Explorer 11.0 Windows 7 x64 Edition Windows 7 x64 Edition
    1. 小山说道:

      这个。。。我暂时没有使用KP,你可以去KP的论坛问问。

      Google Chrome 63.0.3239.108 Google Chrome 63.0.3239.108 Windows 10 x64 Edition Windows 10 x64 Edition
  5. zuan说道:

    能做到外网访问不?映射多少端口?谢谢

    Google Chrome 50.0.2661.102 Google Chrome 50.0.2661.102 Windows 10 Windows 10
    1. 小山说道:

      映射网页访问端口

      Google Chrome 62.0.3202.94 Google Chrome 62.0.3202.94 Windows 10 x64 Edition Windows 10 x64 Edition
  6. Summery说道:

    感谢博主,步骤完整易懂,我用小米3G 128MB ROM +256MB RAM 搭建成功,跑起来挺快的

    Google Chrome 61.0.3163.100 Google Chrome 61.0.3163.100 Windows 10 x64 Edition Windows 10 x64 Edition
    1. 三叶虫说道:

      怎么搭建的?有教程吗?

      Google Chrome 62.0.3202.94 Google Chrome 62.0.3202.94 Windows 10 x64 Edition Windows 10 x64 Edition
      1. 小山说道:

        你看的不就是吗

        Google Chrome 62.0.3202.94 Google Chrome 62.0.3202.94 Windows 10 x64 Edition Windows 10 x64 Edition
  7. leihongping说道:

    etc/找不到hph.ini文件怎么办呢 :cry: :cry: :cry:

    Google Chrome 59.0.3071.115 Google Chrome 59.0.3071.115 Windows 10 x64 Edition Windows 10 x64 Edition
  8. mim说道:

    可不可以出一个pydio的教程,不太会搭

    UC Browser 6.1.3228.1 UC Browser 6.1.3228.1 Windows 7 x64 Edition Windows 7 x64 Edition
    1. 小山说道:

      这个不太适用于路由器

      Google Chrome 60.0.3112.78 Google Chrome 60.0.3112.78 Windows 10 x64 Edition Windows 10 x64 Edition
      1. CatSama说道:

        K3是系统上限制了不能搭pydio吗?还是只是因为pydio 太吃配置了所以不适合路由器。
        我尝试在K3 LEDE上搭pydio,不管怎么调打开index.php都是提示404,我自己搭的芒果云是可以正常使用的,大神如果会搭pydio麻烦教一下吧,让我试一下。

        Google Chrome 59.0.3071.115 Google Chrome 59.0.3071.115 Windows 10 x64 Edition Windows 10 x64 Edition
        1. 小山说道:

          太吃配置了,不推荐搭建,而且需要 MySQL 环境。

          Google Chrome 60.0.3112.101 Google Chrome 60.0.3112.101 Windows 10 x64 Edition Windows 10 x64 Edition
          1. BLUESKY说道:

            我也想知道啊,pydio我这边也是一直报500错误,他们说打开主页看诊断页面,我连index.php都打不开。就想知道怎么搭,不试过不死心。

            Google Chrome 59.0.3071.115 Google Chrome 59.0.3071.115 Windows 10 x64 Edition Windows 10 x64 Edition
  9. fxchby说道:

    这个教程搭建私有云的思路与众不同啊,赞先 :razz:

    Google Chrome 59.0.3071.115 Google Chrome 59.0.3071.115 Windows 7 Windows 7
  10. 一餐打不死说道:

    来一篇openvpn搭建免流的教程吧。最好是没有luci界面,只有entware环境的。

    Google Chrome 49.0.2623.112 Google Chrome 49.0.2623.112 Windows XP Windows XP
    1. 南松说道:

      搞些胡里花哨的?不存在的。

      QQbrowser QQbrowser Android 5.1.1 Android 5.1.1

发表评论

电子邮件地址不会被公开。 必填项已用*标注

This site uses Akismet to reduce spam. Learn how your comment data is processed.