This repository has been archived on 2023-11-13. You can view files and clone it, but cannot push or open issues or pull requests.
blog/_posts/2022-12-19-alist.md
2023-06-03 15:58:09 +08:00

69 lines
4.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
layout : post
title : "WebDAV万能转换器Alist"
subtitle : "ALL IN ONE"
date : 2022-12-19 22:18:45
author : "Manford Fan"
catalog : false
header-img : "img/post-bg-universe.jpg"
tags :
- Alist
- Server
- WebDAV
- Cloud
- Storage
- Disk
---
> ***A file list program that supports multiple storage, powered by Gin and Solidjs.***
如上是`Alist`的官方描述,即一个支持多种存储的文件列表程序,乍一听好像跟`rclone`功能重复了?在某种程度上确实是的,他们都支持将各种网盘和云存储转换成另一种形式,`Alist`是将各种存储转换成Web页面管理或者WebDAV`rclone`则是将各种云存储或者WebDAV映射到系统上。所以这样看来他们可以进行配合中介就是***WebDAV***。
![alist_support](/img/posts/alist_support.png 'alist_support')
## 一、安装配置
这部分不需要多说,因为在官方网站,开发者给出了各种配置方式,个人感觉最简单的就是[一键安装脚本](https://alist.nn.ci/zh/guide/install/script.html#%E8%87%AA%E5%AE%9A%E4%B9%89%E8%B7%AF%E5%BE%84)的方式并且指定安装目录。这种方式还可以自动的配置好开机启动的服务后续在配置一个Nginx反向代理就齐活了从如下配置可以看出`alist`服务用的是5244端口。
```nginx
location / {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Range $http_range;
proxy_set_header If-Range $http_if_range;
proxy_redirect off;
proxy_pass http://127.0.0.1:5244;
# the max size of file to upload
client_max_body_size 20000m;
}
```
## 二、网盘配置
Alist支持非常多的网盘应用以天翼云盘为例一定选天**翼云盘客户端**一开始登陆的时候需要手动设定Admin的密码在此之前有一个默认密码需要在服务器段使用`./alist admin`来获取,登录上之后再修改密码就没有问题了。`alist`有管理界面以及内容界面,首次访问的时候会报错,是因为没有配置登录信息,没有配置存储等。如下是配置界面,配置完成之后,点击**主页**就可以看到天翼网盘已经加载成功。
![alist_manage](/img/posts/alist_manage.png 'alist_manage')
![alist_content](/img/posts/alist_content.png 'alist_content')
> 配置存储的时候对于本地存储webDAV策略选择本地代理对于云存储webDAV策略选择302重定向。
## 三、WebDAV转换
越来越觉得WebDAV协议真的是神一般的协议也相信这个协议是被有些厂商故意打压以至于现在不能完完全普及发挥它的作用。WebDAV的作用就是将网络上的一个文件夹通过`webdav`协议转换成一条可登录的URL在支持`webdav`协议的软件上配置登录之后就可以访问该文件夹里的内容。Alist也支持将已经配置好的各种[云存储生成WebDAV链接](https://alist.nn.ci/zh/guide/webdav.html)。
简单说就是,在反向代理网址后面增加一个`dav`子目录,比如`https://alist.rustle.cc/dav`,登录用户名和密码就是该网站登陆凭证信息。然后`rclone`就可以发挥作用了,*[That's another story~](https://blog.rustle.cc/2022/11/20/rclone/)*
## 四、使用体验
有些人认为Alist这个应用是比较鸡肋的可能大概的想法是没有Alist其他云盘也能正常使用有了Alist也只不过把分散的各个云盘聚合起来。我个人是不太赞同这种看法简单粗暴点从Github上该项目的Star数量就可以看出受欢迎程度该项目斩获12k的Star足以说明问题。
另外就是个人使用方面,功能实现是完全没有问题,主要是浏览/传输文件的时候,不会像本地硬盘那么流畅,尤其是通过`rclone`挂载到Linux服务器下面的时候卡顿感非常明显但由于该应用是基于网络的自然对网络条件有一定的要求如果想要获得良好顺畅的体验端到端的网络一定要畅通。
## 五、参考文档
- [Alist使用指南](https://alist.nn.ci/zh/)
- [Alist Github](https://github.com/alist-org/alist)