Rat's

利用Caddy扩展快速安装FileManager(Filebrowser)私人网盘/在线文件管理器
说明:关于FileManager安装方法之前说过,参考:一个基于GO的轻量级文件管理系统:FileManager安...
扫描右侧二维码阅读全文
10
2017/11

利用Caddy扩展快速安装FileManager(Filebrowser)私人网盘/在线文件管理器

说明:关于FileManager安装方法之前说过,参考:一个基于GO的轻量级文件管理系统:FileManager安装教程,不过对于小白来说,还是有点麻烦,刚刚看到逗比那里也有个安装方法,很方便。

提示:目前FileManager已更名为Filebrowser

截图

请输入图片描述

Caddy FileManager扩展介绍

FileManager是基于Caddy的扩展。它提供文件管理界面,可用于上传/下载/删除/预览和重命名等该目录中的文件。

  • 支持 上传文件
  • 支持 按类型 搜索文件
  • 支持 批量压缩 文件下载
  • 支持 多用户管理(权限可控)
  • 支持 在网页执行 Linux命令
  • 支持 创建 共享链接(限时/永久)
  • 支持 在线编辑 各类文本文件
  • 支持 在线浏览 图片/文本/视频等
  • 支持 新建/重命名/移动/删除 文件和文件夹等
  • 部署简单,几步完成,无需任何依赖环境
  • 等等 …

安装Caddy

Caddy文档:https://caddyserver.com/docs/http.filebrowser
Github项目:https://github.com/hacdias/filebrowser

运行以下命令:

wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubiBackup/doubi/master/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh install http.filebrowser
#备用地址
wget -N --no-check-certificate https://www.moerats.com/usr/shell/Caddy/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh install http.filebrowser

安装成功后,继续新建一个用于使用的虚拟主机文件夹,例如file(可以自己改):

mkdir /usr/local/caddy/www && mkdir /usr/local/caddy/www/file

配置

1、IP访问
绑定虚拟主机为IP(即通过IP访问),HTTP协议(80端口)。

# 以下全部内容是一个整体,是一个命令,全部复制粘贴到SSH软件中并一起执行!
echo ":80 {
 root /usr/local/caddy/www/file
 timeouts none
 gzip
 filebrowser / /usr/local/caddy/www/file {
  database /usr/local/caddy/filebrowser.db
 }
}" > /usr/local/caddy/Caddyfile

2、域名HTTP访问
本示例是,绑定虚拟主机为域名(即通过域名访问),HTTP协议(80端口)。

# 以下全部内容是一个整体,是一个命令,全部复制粘贴到SSH软件中并一起执行(注意替换示例域名)!
echo "http://moerats.com {
 root /usr/local/caddy/www/file
 timeouts none
 gzip
 filebrowser / /usr/local/caddy/www/file {
  database /usr/local/caddy/filebrowser.db
 }
}" > /usr/local/caddy/Caddyfile

3、域名HTTPS访问
本示例是,绑定虚拟主机为域名(即通过域名访问),HTTPS协议(443端口)。

如果你有SSL证书和密匙的话,把SSL证书(xxx.crt)和密匙(xxx.key)文件放到/root文件夹下(也可以是其他文件夹,自己改下面代码),然后这样做:

# 以下全部内容是一个整体,是一个命令,全部复制粘贴到SSH软件中并一起执行(注意替换示例域名)!
echo "https://moerats.com {
 root /usr/local/caddy/www/file
 timeouts none
 tls /root/xxx.crt /root/xxx.key
 gzip
 filebrowser / /usr/local/caddy/www/file {
  database /usr/local/caddy/filebrowser.db
 }
}" > /usr/local/caddy/Caddyfile

如果你没有SSL证书和密匙,那么你可以这样做:

下面的xxxx@xxx.xx改成你的邮箱,同时需要注意的是,申请SSL证书前,请务必提前解析好域名记录(解析后最好等一会,以全球生效),否则Caddy会申请并配置失败!

# 以下全部内容是一个整体,是一个命令,全部复制粘贴到SSH软件中并一起执行(注意替换示例域名)!
echo "https://moerats.com {
 root /usr/local/caddy/www/file
 timeouts none
 tls xxxx@xxx.xx
 gzip
 filebrowser / /usr/local/caddy/www/file {
  database /usr/local/caddy/filebrowser.db
 }
}" > /usr/local/caddy/Caddyfile

4、域名HTTP重定向HTTPS
本示例是,域名HTTP重定向为HTTPS

当你是手动指定SSL证书和密匙 来配置的话,Caddy只会监听443端口(https),并不会自动设置80端口(http)的重定向,如果要做重定向的话,可以这样做:

下面的示例代码中,是把http://moerats.com重定向到了https://moerats.com

# 以下全部内容是一个整体,是一个命令,全部复制粘贴到SSH软件中并一起执行(注意替换示例域名)!
echo "http://moerats.com {
 timeouts none
 redir https://moerats.com{url}
}
https://moerats.com {
 root /usr/local/caddy/www/file
 timeouts none
 tls /root/xxx.crt /root/xxx.key
 gzip
 filebrowser / /usr/local/caddy/www/file {
  database /usr/local/caddy/filebrowser.db
 }
}" > /usr/local/caddy/Caddyfile

当你已经配置完上面步骤后,那就需要启动Caddy了。

/etc/init.d/caddy start
# 如果启动失败可以看Caddy日志: tail -f /tmp/caddy.log

最后就可以通过ip访问filemanager了,用户名和密码均为admin

更多配置方法请参考原文:https://doub.io/jzzy-3/

Vultr注册就送$50,可开日本/新加坡等机房,【点击注册】。
最后修改:2019 年 02 月 17 日 08 : 46 PM

发表评论

26 条评论

  1. pkl

    caddy安装脚本没法用了.

    1. Rat's
      @pkl

      是的,filemanager插件好像被删了。

  2. 白菜

    [root@VM_0_12_centos ~]# echo ":80 {

    root /usr/local/caddy/www/file
    timeouts none
    gzip
    filebrowser / /usr/local/caddy/www/file {
    database /usr/local/caddy/filebrowser.db
    }
    }" > /usr/local/caddy/Caddyfile
    [root@VM_0_12_centos ~]# /etc/init.d/caddy start

    [错误] Caddy 启动失败 !
    [root@VM_0_12_centos ~]# tail -f /tmp/caddy.log
    Activating privacy features... done.
    2019/06/20 22:28:37 no action found for directive 'filebrowser' with server type 'http' (missing a plugin?)
    萌鼠大佬,好请问没有配置可以正常启动,但是配置之后就启动不了(附上日志)

    1. Rat's
      @白菜

      caddy官方好像删除了这个插件,所以只能手动安装了,手动地址:https://www.moerats.com/archives/316/。

  3. 放冰箱

    Connecting to caddyserver.com (caddyserver.com)|138.68.240.78|:443... connected.
    HTTP request sent, awaiting response... 400 Bad Request
    2019-05-13 10:42:24 ERROR 400: Bad Request.

    大佬请问这是怎么了

    1. Rat's
      @放冰箱

      重新运行脚本看看

  4. KwaBEF

    还是问下,怎么把IP——访问这个界面,改成IP:某个设定的端口——访问界面?
    不然这个文件管理跟Aria2下载的Web界面,都是默认80口,两个界面直接IP访问的?
    怎么SSH命令修改

    1. Rat's
      @KwaBEF

      把:80的80改成你需要的端口,比如:8000,然后重启caddy

  5. 朝色

    插件已经更新了,方法几乎没变,把原来名字改成新名字就可以了。

    1. Rat's
      @朝色

      我更新下文章,感谢提醒

  6. 飞木

    -bash: wget: command not found
    这是个什么鬼?

    1. Rat's
      @飞木

      缺少命令,你运行下yum install wget -y

  7. jackzhang

    博主麻烦问下,我搭建了aria2NG,同时配备了filemanager来管理下载的文件,我用http是可以正常使用的,这几天想要加上SSL证书变成HTTPS却怎么也不行,访问aria2NG的网站显示检查防火墙和代理服务器,访问filemanager,界面能出来可是数据库又无法使用,无法登陆。可以帮忙看下什么原因吗?

    1. Rat's
      @jackzhang

      你的操作有问题,你还没把问题说清楚,或者你看下这个教程:https://www.moerats.com/archives/443/,唯一不方便的就是没你需要SSL,你可以用Caddy反代一下,教程随便给个你:https://www.moerats.com/archives/679/,你参考后面的域名配置。

  8. CPUFAN

    这个是直接可以在空白的服务器上安装然后ip就可以访问的吗?为什么我不行啊

    1. Rat's
      @CPUFAN

      是的,不行就说明你姿势不对。

  9. 小白

    ● caddy.service - LSB: The HTTP/2 web server with automatic HTTPS
    Loaded: loaded (/etc/init.d/caddy)
    Active: active (exited) since Fri 2018-06-08 04:49:12 EDT; 1min 34s ago
    Process: 503 ExecStart=/etc/init.d/caddy start (code=exited, status=0/SUCCESS)

    Jun 08 04:49:12 yfn.com caddy[503]: [错误] Caddy 启动失败 !

    大侠,帮忙看看什么问题

    1. Rat's
      @小白

      Caddy启动失败一般是配置文件错误,或者80/443端口被占用。

  10. 浪浪

    小白看不懂,这样了怎么办
    Activating privacy features... done.
    2018/05/06 11:36:37 listen tcp :80: bind: address already in use

    1. Rat's
      @浪浪

      80端口被占用,参考这篇文章检查下:https://www.moerats.com/archives/605/。

  11. 哈?

    大佬debian-8.0-x86_64系统下root账户.是这么设置的么?
    chmod 777 /usr/local/caddy/www/file
    没效果啊,在网页上选删除,网页会刷新文件还在,点下载跳转到http://107.150.25../api/download/http://107.150../文件名? 显示Not Found。

    1. Rat's
      @哈?

      你这个下载错误提示文件不存在,说明已经删了,至于刷新还在,你清空下缓存试试?再不行重装看看吧。

  12. 哈?

    按照教程绑定的ip,其他一切正常,端口也开了也能访问网页,可以新建文件夹上传文件,但是无法下载和删除这是为什么

    1. Rat's
      @哈?

      这个没遇到过,你给文件夹可执行权看看?

      1. 哈?
        @Rat's

        大佬这个什么意思?
        错误日志,Activating privacy features... done.http://。

        1. Rat's
          @哈?

          域名解析地址改了没?