玩转serv00虚拟主机:零成本搭建alist个人网盘
不少童鞋在搭建博客、alist、图床等各类web服务的时候苦于云服务器的成本望而却步,但其实搭建web服务也可以用虚拟主机,不少厂商都有免费的虚拟主机,但对于很多童鞋可能是第一次听说虚拟主机,这里就开一个新的系列,玩转serv00家的免费虚拟主机,本期就从0开始搭建alist个人网盘。
alsit是一个支持多存储的文件列表程序,可以挂载例如阿里云盘、百度网盘等等多家存储,也同时可以使用本地空间来存储,实现多网盘文件管理,也可以对文件进行编辑预览上传下载,可以说是目前最好用的网盘管理程序之一,更多介绍可以前往github查看。
本篇只涉及搭建alist,serv00虚拟主机相关入门以及基础操作请自行查看第一期内容,本篇相关基础操作不再详细介绍,只会一笔带过。
相关文章:《玩转serv00虚拟主机:零成本搭建wordpress个人博客&入门》
一、配置基础运行环境
1.开放运行权限
登录serv00控制台,进入Additional services-Run your own applications,允许运行第三方软件。
2.开放运行端口
进入Port reservation-Add port,添加一个端口,这个端口可以随机,但是需要确保不会和其他的冲突,如果提示“This port is already being used by another user”说明端口已经被其他人占用了,需要更换一个端口,端口可以从1-65525自选一个,总之不冲突就行。添加后还需要记住这个端口号,等下需要用上。
3.添加数据库
这一步第一期已经详细说了,这里不再过多赘述。添加一个mysql数据库即可。
二、添加反代网站(可选)
在步骤一中开放了端口,在部署完成后就可以通过域名+端口的形式访问alist,但是要记住端口显然十分不便,而且这样还有可以导致封号(滥用端口),这里更推荐使用添加反代网站的方式访问,这样就可以不用输入都可以访问了。
控制台进入WWW Websites-Add website,这里需要展开高级设置,填入对应的域名;Website type需要选择proxy,也就是代理模式;Proxy target默认localhost,Proxy url不用填;Proxy port选择刚刚添加的端口,其他的默认就行。
添加好反代后还需要绑定域名(也就是需要把刚刚填入的域名解析到正确的ip地址,不是下图中的ip,不要照抄),这一步骤自行查看第一期,这里不再过多赘述。
三、部署alist
1.上传文件
serve00母鸡是FreeBSD的系统,alist没有freebsd版,所以直接用官方的包是没法运行,但好在github已经有大佬编译好了freebsd版本的alist(https://github.com/uubulb/alist-freebsd),我们下载好后运行就可以了。
从控制台进入File manager就可以上传文件,具体步骤看第一期文章。这里可以直接上传到对应域名的根目录下,不用传到public_html文件夹。
2.首次运行并配置alist
这里需要先登录ssh,可以用cmd的ssh命令来登录,也可以选择xshell这类的软件来登录,登录地址以及用户名、密码在注册时发送的邮件里面有,用户密码就是控制台的登录账户密码。
登录ssh后先进入存放alist对应的文件夹,比如我这里域名为xxx,那这个文件夹实际路径为~/domains/xxx,依次输入以下命令运行alist:
#进入alist所在文件夹
cd ~/domains/xxx
#给予alist运行权限
chmod +x alist
#运行alist
./alist server
这里首次运行后会停止,此时已经生成管理员密码,且还需要修改配置文件,输出的内容中“the initial password is”这句后面就是密码,这个需要记住,等下会用上。
第一次运行完成后进入serv00控制台-File manager,配置alist的配置文件。进入alist存放目录,再进入data文件夹,打开并编辑config.json,这个就是alist的配置文件。
这里只需要编辑三个地方,一个是数据库部分(database),把一开始建立好的数据库信息填入,只需要修改数据库类型(type,刚刚建立的是mysql就填这个)、数据库地址(host)、数据库名称(name)、数据库用户名(user)以及数据库密码(password),其他部分不用改动;
第二部分是监听部分(scheme),这里监听地址(address)为了安全起见,改成“127.0.0.1”,运行端口部分(http_port)改成一开始在控制台开放的运行端口;
最后还需要把s3存储部分(s3)的端口(port)改成0,这里的0意思是不使用s3存储,因为默认的端口会有端口冲突,99%童鞋是不会用s3的,这里就干脆不用。修改完成后保存,就完成了alist配置。
3.运行alist
配置无误后回到ssh,进入对应的文件夹,再次运行alist:
./alist server
此时就可以打开浏览器,输入对应的域名,就可以访问alist了,输入用户名(默认为admin)密码(首次运行alist生成的密码)就可以正常登录。
但是此时是无法退出shh界面的,linux/freebsd正常情况下退出ssh就会结束当前运行的进程,为了能让alist在后台运行(退出ssh也能运行),则需要修改运行的命令,注意此时需要先结束掉原本在运行的alist程序,在ssh下同时按住ctrl+c就可以结束当前运行的程序,再输入以下命令:
screen ./alist server
此时就可以结束ssh,alist也可以正常访问。
4.alist挂载网盘&设置
碍于篇幅,具体的alist挂载网盘以及对应的设置本篇也不做介绍(写下去内容太多,写不完),以后有机会再写一篇。
需要注意刚刚配置alist中以及禁止了s3存储,如果需要的s3需要自行修改端口并重新配置alist(但是我猜99%的童鞋连s3是啥都不知道)。
四、其他
1.国内直接访问serv00速度太慢,建议套上cloudflare免费的cdn,此步骤看第一期文章。
2.serv00有时会重启母鸡(系统),重启后系统是不会自动运行alist,就需要自己手动运行下alist,也可以用对应的自动任务重启后自动运行,但是吧我自己没有测试过行不行(还没有遇到母鸡重启的情况),可以在控制台-cron job里面添加一个自动任务,以下内容仅供参考(我也不知道freebsd这么写行不行,应该是可以的吧)。
cd ~/domains/alsit文件夹 && screen ./alist server
3.最后还是需要提醒下请勿滥用。