0%

利用 Cloudreve 搭建简易云存储

最近终于返校了其实已经一个月了, 已经开始期末复习了, 教课的老师们显然不会放弃线下考试的念头, 但至少我选到的课还都是线上考试. 唯一很传统的是手写作答拍照上传, 有机和高数两门课还发了答题纸(的电子版), “有条件的同学”打印出来用. 说到打印自然就是学校里的垄断小店了, 不过里面的机子嘛……一言难尽, 前几天还在用影子系统的机器轮到我就成了原始系统, 甚至染上了毒, 正好了我的U盘. 虽然只是普通的隐藏文件夹病毒, 也是很糟心啊. 于是就想着重新启动许久之前的网盘计划. 以上是背景.

以前用Nextcloud在Docker里搭过一次网盘, 感觉有些傻瓜. 这次只是为了做一个轻量的文件中转, 主要就是为应付打印店的毒机, 于是选择了简易的Cloudreve.

搭建起来比较简单, 从GitHub下好安装包, scp到服务器解压, 直接运行解压出来的可执行文件就能用了. 设置成后台服务什么的都在文档里写得很清楚.

主要遇到的问题在反代这里, 整了半天还是消不掉端口号. 一开始的配置是这么写的: (注释掉的是以前配博客反代的句子, 直接拷过来了)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#/etc/nginx/conf.d/CONFIG.conf
server {
listen 5212;
#root /var/www/blog;
server_name MY_DOMAIN;
#index index.html index.htm;
proxy_set_header Host $host:$server_port;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
location / {
proxy_pass http://127.0.0.1:5212/;
}
}

配置好Nginx之后直接nginx -s reload, 什么反馈都没有, 还以为配置没问题, 但访问域名还是初始页面. 然后试着systemctl重启了一下Nginx, 发现服务打不开了.

看详细的信息是因为5212端口占用, 导致Nginx没办法按照配置文件去绑定监听. 仔细想了一下发现是后台刚设置好的的cloudreve在听5212, 又大概猜了猜这边反代的原理还没学网络, 把listen的5212改成80, 重启, 通了.

所以大概是Nginx通常一直监听着80端口, 根据不同的访问域名导向配置文件里对应好的其他端口. 而80端口是HTTP默认访问的, 因此不加也可以. 所谓隐藏端口大概就是换成(不用手动输入的)默认端口? 似乎又是一个为了方便记忆而做的事情. 大概也有一部分是安全考虑.

所以这篇的内容就这些了. 就是记录一下踩到的坑. 要是认真学了一遍Nginx还用得着这样写一个下午的配置文件?

对了还有一件事.

搞完云盘之后po了这篇文章, 然后博客就500了. 查了一大堆东西都不太懂, 看来以后除了计算机网络还要找本Nginx的书.

然后我把云盘和博客的配置文件合在了一起, 然后把博客相关的部分变成了这样

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
server {
listen 80;
root /var/www/blog/;
server_name blog.f-jason.site;
index index.html index.htm;
#proxy_set_header Host $host:$server_port;
#proxy_set_header X-Real-IP $remote_addr;
#proxy_set_header REMOTE_HOST $remote_addr;
#proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
#location / {
#proxy_pass http://127.0.0.1:80/;
#root html;
#index index.html;
#}
}

然后基本就好了. 看来不要搞太多花里胡哨的.

明天还要复习高数.