使用Alist对接cloudflare的R2文件储存再利用webdav挂载到本地-踩坑过程以及填坑流程。

目录标题

    • 简单介绍Alist
    • Alist资源链接
    • 从安装Alist 到对接 cloudflare R2
    • 对接webdav

网上关于cloudflare的R2文件储存对接方面的教程比较少,前几天遇到一个朋友需要使用到这项服务,陪他一起折腾了一些时间,下面贴出来给各位参考免得各位踩坑

关于为啥使用Alist 而不是其他的呢,其实也试过lsky pro
但是lsky pro有一个问题就是会自动重命名文件以及自动创建目录,
但是我们的需求是直接使用我们上传的文件夹名和文件名
所以最终使用的Alist

简单介绍Alist

它是github上的一款开源软件,使用go写的,可以快速的运行起来,
文档内有中文版

Alist资源链接

https://github.com/alist-org/alist
该软件中文文档:
https://alist.nn.ci/zh/

从安装Alist 到对接 cloudflare R2

最开始参考了这位同学的

Alist挂载Cloudflare R2的简单教程
其实看起来确实有完整的流程以及逻辑
但是Alist本身对连接状态管理上没有做实时更新处理,导致会遇到像这样的问题:
failed get objs: failed to list objs:Unauthorized: Unauthorized status code: 401, request id: , host id:
使用Alist对接cloudflare的R2文件储存再利用webdav挂载到本地-踩坑过程以及填坑流程。_第1张图片
遇到这个问题,我们其中一种解决方案是创建key的时候设置ip白名单

很奇怪,这个方案确实解决过问题,
但是我们继续往后面测试,发现ip其实不重要, 后面尝试部署新机器的时候 不设置白名单也可以。但是要重启一下Alist

然后继续往后,当文件能正常上传时,又发现文件上传后Alist不会自动刷新资源列表,需要手动点击一下刷新按钮,才会重新拉取最新的文件列表,而且刷新按钮还很小,及其隐蔽,对一个高分辨率显示器的朋友 十分的不友好
使用Alist对接cloudflare的R2文件储存再利用webdav挂载到本地-踩坑过程以及填坑流程。_第2张图片
由于我哪位朋友处理的文件数量巨大,导致他一次性选择多个小文件的时候,浏览器卡死了
使用Alist对接cloudflare的R2文件储存再利用webdav挂载到本地-踩坑过程以及填坑流程。_第3张图片
使用Alist对接cloudflare的R2文件储存再利用webdav挂载到本地-踩坑过程以及填坑流程。_第4张图片

使用Alist对接cloudflare的R2文件储存再利用webdav挂载到本地-踩坑过程以及填坑流程。_第5张图片

。。。 根据我的判断就是 一次选择几万*几M的零散文件,导致浏览器扛不住
我也不清楚Alist前端具体是怎么写的,是暂存了文件的那些信息。

对接webdav

所以就换了个思路, 走webdav去上传

但是上传的时候遇到问题链接不上
使用Alist对接cloudflare的R2文件储存再利用webdav挂载到本地-踩坑过程以及填坑流程。_第6张图片
然后继续找教程 发现需要修改注册表,以及服务里重启WebClient

下面是其他同学写的详细教程,我就不搬运他人劳动成果了:

记录下Windows10或Windows11挂载alist的WebDAV

经过这些操作,终归是完成了这次业务
但是也有新的问题就是走webdav 目前是上传速度约400k/s
不清楚是网络问题还是接口限速
晚点尝试爬试试

补充一些后续,在操作aws s3 附件公网访问以及申请证书、对接cdn的时候
第一个坑
aws S3 的文件访问需要额外设置为公开,才能外部网络访问
使用Alist对接cloudflare的R2文件储存再利用webdav挂载到本地-踩坑过程以及填坑流程。_第7张图片
使用Alist对接cloudflare的R2文件储存再利用webdav挂载到本地-踩坑过程以及填坑流程。_第8张图片

如果之前上传的一些文件还是无法访问,请单独给文件打开公开访问权

使用Alist对接cloudflare的R2文件储存再利用webdav挂载到本地-踩坑过程以及填坑流程。_第9张图片

第二个坑,在对接cdn给S3的附件加速的时候,
朋友说aws 申请证书多个点,百度上还有其他的朋友也遇到了 笑死
在这里插入图片描述
使用Alist对接cloudflare的R2文件储存再利用webdav挂载到本地-踩坑过程以及填坑流程。_第10张图片
其实我觉得这个坑还是怪aws

如果是直接复制的时候 他会复制出这样的东西:

	
CNAME 名称:

_c7bbe33fbb3f78cb3bd99f9d54401fd4.awscdn.88888.site.

然后粗心的朋友可能就直接拿去解析,然后就得到红色的警告,然后挠头 掉几根头发
使用Alist对接cloudflare的R2文件储存再利用webdav挂载到本地-踩坑过程以及填坑流程。_第11张图片

其实我们仔细看 这个记录头里面 包含了我们本来的域名,只需要把它删掉就行了

使用Alist对接cloudflare的R2文件储存再利用webdav挂载到本地-踩坑过程以及填坑流程。_第12张图片

使用Alist对接cloudflare的R2文件储存再利用webdav挂载到本地-踩坑过程以及填坑流程。_第13张图片

今天分享暂时到此

你可能感兴趣的:(go,可用性测试,学习方法)