0%

alist

这个东西应该是最合适的了……大型文件让他们进入qq群下载好了(笑

https://alist.nn.ci/zh/

这个可以挂载网盘,so……以后可以考虑弄一下视频(叉腰

一键安装反正本机没有问题的,不过需要修改配置文件

Alist 安装成功!

访问地址:http://YOUR_IP:5244/

配置文件路径:/opt/alist/data/config.json
$查看管理员信息,请执行
cd /opt/alist
./alist admin

查看状态:systemctl status alist
启动服务:systemctl start alist
重启服务:systemctl restart alist
停止服务:systemctl stop alist

大概不会被攻击吧,应该不会吧

然后也写了怎么配置反向代理嗯……

使用手动,不然是 root 用户跑可受不了。

curl -fsSL “https://alist.nn.ci/v3.sh" | bash -s install 家目录

sudo 的话应该没关系了吧

密码什么的忘记了可以进入 /opt/alist ./alist admin 查看

构建起来之后,元信息这一栏就是公告,应用到子文件夹就是点进去也可以看到。md语法,支持链接。

更新了内容之后再设置索引,自动更新勾选,搜索索引bleve

速度很着急,添加一下 CDN 吧。version 是自动填写的,你别自己写了(

需要修改的! polyfill,logo,这些严重拖了速度……肯定要换一下

https://npm.elemecdn.com/alist-web@$version/dist/

这个挺快的,就你了

然后修改一下 nginx 的代理,这里参数挺多的……

1
2
3
4
5
6
7
8
9
10
11
12
13
14
location / {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
// 让服务器获得真实地址而不是负载
proxy_set_header X-Forwarded-Proto $scheme;
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;
}

参考配置文件

现在会是监听 80,之后换到 443,我得弄明白这些是什么

Nginx 配置详解 | 菜鸟教程

nginx 的配置

acme 的话,他的

1
2
3
4
acme.sh --install-cert -d example.com \
--key-file /path/to/keyfile/in/nginx/key.pem \
--fullchain-file /path/to/fullchain/nginx/cert.pem \
--reloadcmd "service nginx force-reload"

这个应该只是把 file put 到了指定的地方,如果要让nginx 读取还需要配置。

https://blog.mae5.com/72

根据这个,修改 site-available,该怎么 ln 来着?

使用 ln -s A B,将 A 连接到 B,一定要都用绝对路径

https://docs.nginx.com/nginx/admin-guide/web-server/reverse-proxy/

官方的反向代理文档,看看吧

http 成功,在 site-available 里加入 alist.conf

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
server {
listen 80;
listen [::]:80;

server_name lib.acyanbird.rocks;

# root /var/www/example.com;
# index index.html;

location / {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
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;
}

}

链接到 site-enabled

ln -s /etc/nginx/sites-available/alist.conf /etc/nginx/sites-enabled/alist.conf

反正都是 root 执行的,很蠢,但是有用

如何上传?似乎要使用元信息,这个东西又是跟实际存储什么关系?

右下角可以写入!允许游客写入要更改元信息

alist 可以备份,虽然只是设置什么的,聊胜于无吧

申请证书去

acme.sh –issue -d mydomain.com –nginx

然后生成证书

acme.sh –install-cert -d example.com
–key-file /path/to/keyfile/in/nginx/key.pem
–fullchain-file /path/to/fullchain/nginx/cert.pem
–reloadcmd “service nginx force-reload”

(一个小提醒, 这里用的是 service nginx force-reload, 不是 service nginx reload, 据测试, reload 并不会重新加载证书, 所以用的 force-reload)

Nginx 的配置 ssl_certificate 使用 /etc/nginx/ssl/fullchain.cer ,而非 /etc/nginx/ssl/<domain>.cer ,否则 SSL Labs 的测试会报 Chain issues Incomplete 错误。

1
2
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; # managed by Certbot

How to use Nginx to redirect all traffic from http to https - Linux Tutorials - Learn Linux Configuration

反正就是 site-available 两个都拿上,第一个转发

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
server {
listen 80;
server_nam 域名 ;
return 301 https:域名/$request_uri;
}

server {
listen 443 ssl;
server_name 域名 ;
ssl_certificate //alist/cer/cert.pem; # 对应 fullchain
ssl_certificate_key //cer/key.pem; # 对应 key-file
# other configuration
location / {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
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;
}
}

试试看,不出问题才会有鬼

接触 ln,直接删除目标文件

不要忘记修改 alist 的配置

/opt/alist/data/config.json

Client sent an HTTP request to an HTTPS server.

怀疑是 80 端口,只监听 443试试看?

不是这个问题,是 proxy_pass 要改成 https

成功!比之前快点!

完结了,接下来是各种改善工作了。再见