简介

AList是一款支持多种存储的目录文件列表程序,后端基于gin,前端使用react。

项目地址

https://github.com/Xhofe/alist

https://github.com/Xhofe/alist-web

演示

http://cloud.videomiao.vip/

部署

一键脚本

安装

curl -fsSL "https://nn.ci/alist.sh" | bash -s install

已经安装过再次执行安装会删除之前的数据,更新请使用更新命令。

更新

curl -fsSL "https://nn.ci/alist.sh" | bash -s update

卸载

curl -fsSL "https://nn.ci/alist.sh" | bash -s uninstall

手动部署

打开AList Release下载要部署的系统对应的文件

解压下载对文件得到可执行文件:tar -zxvf alist-xxxx.tar.gz(Linux)

赋予程序执行权限:chmod +x alist-xxxx

运行程序:./alist-xxxx

完成

守护进程

vim /usr/lib/systemd/system/alist.service添加以下内容,其中path_alist为alist所在的路径

[Unit]
Description=alist
After=network.target
 
[Service]
Type=simple
WorkingDirectory=path_alist
ExecStart=path_alist/alist-xxxx -conf data/config.json
Restart=on-failure
 
[Install]
WantedBy=multi-user.target

反向代理

程序默认监听5244端口,要实现https访问,需要使用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_redirect off;
        proxy_pass http://127.0.0.1:5244;
    }

使用

添加账号

所有账号的必填项:

name(名称):唯一标识符,也是当有多个账号时展示的路径

index(索引):当有多个账号时,用于排序,越小越靠前

proxy(带理):是否允许服务器中转下载

本地存储

只需填写根目录路径即可,可以是绝对路径,也可以是程序所在的相对路径

阿里云盘

refresh_token(刷新令盘):如何获取参见https://media.cooluc.com/decode_token/

Onedrive

打开https://tool.nn.ci/onedrive/request

创建应用

在打开的页面,选择所在区域,点击创建应用

登陆后选择「注册应用程序」,输入「名称」,选择「任何组织目录中的账户和个人」(注意这里不要看位置选择而是看文字,部分人可能是中间那个选项,不要选成单一租户或者其他选项,否则会导致登陆时出现问题),输入重定向 URL 为 https://tool.nn.ci/onedrive/callback,「注册」即可,然后可以得到client_id

注册好应用程序之后,选择「证书和密码」,点击「新客户端密码」,输入一串密码,选择时间为最长的那个,点击「添加」
(注:在添加之后输入的密码之后会消失,请记录下来 client_secret 的值)

获取刷新令牌

将上一步骤中获得的client_idclient_secret填入https://tool.nn.ci/onedrive/request 这个页面,点击获取刷新令牌,就可以得到刷新令牌了

获取Sharepoint site_id

如果需要挂载Sharepoint,完成上一步后,在显示刷新令牌的界面会出现一个输入站点地址,输入站点地址后点击获取site_id即可。

添加账号

将上述过程中获取得到的值依次填入即可。

常见问题

向前不兼容版本记录
v2.0.0-beta5

阿里云盘视频无法播放,下载显示InvalidArgument?
由于referrer的限制,必须使用移动端token

视频播放不了?
然后检查一下是不是编码不支持,一般浏览器不支持h.265(hevc)等编码视频,ac3等编码音频,Safari不支持的更多,建议使用软件播放。

获取中转链接?
允许中转之后,复制对应文件直链,将/d改成/p即可。

前端文件在哪里?
为方便安装,前端文件与程序打包在一起了,如需修改,请按照从源码运行自行修改编译或填写自定义样式/脚本字段。

密码忘了怎么半?
命令行 ./alist-xxxx -password查看。

自定义样式/脚本不生效?
是否前后端分开了?自定义部分为后端处理,只有在不分开时才起作用。