halo-dev / plugin-s3

为 Halo 提供 S3 对象存储协议的存储策略
https://halo.run/store/apps/app-Qxhpp
GNU General Public License v3.0
34 stars 21 forks source link

s3存储桶资源路径加载异常 #166

Open junyangfan opened 3 months ago

junyangfan commented 3 months ago

感谢能使用到这么棒的项目,但是我在使用过程中遇到了一个问题,还请得到回复

目前用的腾讯云的COS,策略配置如下,在存储桶下有个 images 文件夹用来存放图片

3

但是遇到个问题,不在 images 文件夹下面的图片也会展示出来,(其实根本没有那些图片,像是把images文件夹下的图片复制了一份到根目录,但是COS存储桶中根目录下并没有那些图片文件)

1 2

导致后台附件库的总数据是存储桶的两倍,一半都是加载失败的情况,当我想要删除这条存储策略重新添加的时候,提示有文件不能删

4

请问这个问题该怎么解决呢?

longjuan commented 3 months ago

是通过什么方式上传的呢?

junyangfan commented 3 months ago

是通过什么方式上传的呢?

感谢回复,之前存储桶中已经存在这些文件,s3配置了一下,就这样了

PS:操作过 工具 -> S3关联,配置存储桶的时候 最初不是设置的 images,有用过其他的文件夹,例如test等,但是我感觉这些操作应该不会出现这样的情况

longjuan commented 3 months ago

这些文件是否曾经被存在根目录下?

我认为的可能发生的方式,这些文件原来是存在根目录下的,在halo添加存储策略后使用了S3关联功能,把文件关联了。然后移动了文件的位置到image文件夹下,再次使用了S3关联功能。导致出现2份的情况。 若是这样,建议在附件中找到错误链接的附件,右侧三个点,有个解除S3关联功能,该功能不会影响存储桶内的文件,仅删除Halo中的记录。

junyangfan commented 3 months ago

这些文件是否曾经被存在根目录下?

我认为的可能发生的方式,这些文件原来是存在根目录下的,在halo添加存储策略后使用了S3关联功能,把文件关联了。然后移动了文件的位置到image文件夹下,再次使用了S3关联功能。导致出现2份的情况。 若是这样,建议在附件中找到错误链接的附件,右侧三个点,有个解除S3关联功能,该功能不会影响存储桶内的文件,仅删除Halo中的记录。

谢谢您的答复,这些文件不曾存在根目录下,网格模式没有提供解除S3关联的操作,列表模式右侧三个点有这个选项,但是800多张图片一张一张解除关联不太现实

longjuan commented 3 months ago

目前从原理上看可能是误操作导致的 批量解除关联功能还需要较长的一段时间