halo-dev / halo

强大易用的开源建站工具。
https://www.halo.run
GNU General Public License v3.0
33.96k stars 9.69k forks source link

附件设置-缩略图处理策略设置后显示有问题 #1102

Closed wuxingchi closed 4 years ago

wuxingchi commented 4 years ago

1、使用的是腾讯云的COS,图片能够正常上传到COS,也能够正常显示。 2、但是后台的缩略图无法显示,是不是我设置的缩略图处理策略有问题?不是这串字母的话,应该是什么?

Snipaste_2020-10-09_11-04-08 Snipaste_2020-10-09_10-49-51

3、我看了一下附件图片的路径,拼接后的地址是这个,应该是有问题的吧

Snipaste_2020-10-09_11-03-22
ruibaby commented 4 years ago

https://cloud.tencent.com/document/product/460/46823#.E6.A0.B7.E5.BC.8F.E7.AE.A1.E7.90.86

wuxingchi commented 4 years ago

https://cloud.tencent.com/document/product/460/46823#.E6.A0.B7.E5.BC.8F.E7.AE.A1.E7.90.86

问题已解决,感谢

WenyinWei commented 4 years ago

Hi @ruibaby , 我在不断调试 COS 的时候,在基础选项->附件设置碰到了许多配置上的问题,虽然花点时间看 F12 的请求地址可以解决,但是其他人说不定也会花掉很长时间,所以我在这里提出来,希望后面的同学可以节约碰到类似问题的时间。

配置细节

image

若是在腾讯云 COS 配置下,

  1. 绑定域名项,要提醒使用者不需要加 https://,否则会导致套取链接时重叠 https 的地址错误(腾讯云复制粘贴是带 https:// 的,容易让人出错)。

  2. 区域项,感觉不是特别有必要用下拉框,因为腾讯云提供的 COS 地址似乎在扩大,比如说现在就有香港了,但是在 v1.4.2 中并没有找到。这一项也许可以交给用户自己进行配置,配置页面中仅提供示例,而不是用下拉框的形式绑死。另外,北京一区和北京着实让人迷惑。

  3. 缩略图处理策略,前面需要加上分隔符,对腾讯云而言默认是不是 !,但是在腾讯云控制台的->数据处理->图片处理的样式分隔符的提示有误导。默认是/,但是下面小字中使用方法的示例是!,需要提醒用户注意他们的分隔符。

image

  1. 文件目录,这一项不需要前面加斜杠/path/to/imgpath/to/img就行了。

可以在以上的 InputItem 旁边加上验证,输入后自动判断是否有以上这些可以提前避免的字符串的错误(或者简单点,直接给出样例在旁边)。

图片读取权限

并且要是想显示原图,我得打开腾讯云中 COS 的权限管理->存储桶访问权限,更改公共权限公有读私有写,原图才能在我的博客上显示出来。给我的感觉像是 Secret ID/Key 没有发挥作用。我在配置 Secret ID/Key 的时候腾讯云让我注册一个子账号(为了安全),我应该是给了这个子账号 COS 资源的读写权限。确实也上传成功了,但下载就不行。作为用户在博客上浏览的时候如果不把公共权限开放公有读还是看不到。我的直观猜测是,给 Halo 配置的 Secret ID/Key 只有上传的时候发挥了作用,下载的时候似乎没有带上,会被拒绝。

image

image

ruibaby commented 4 years ago

@WenyinWei

  1. 现在似乎确实没有提醒。
  2. 不止可以下拉,还可以填写。
  3. 这个应该是自己定义的。
  4. 好的

目前云存储只在上传有用到 Secret ID/Key,其他操作均未通过后端,而是直接访问,所以需要开启公共读的权限才行。因为在之前参考过其他系统的云存储,都是这么做的。如果访问都需要通过后端,我觉得并不是很有必要。

感谢你的反馈和建议,附件上传和配置这块我们将在未来进行彻底重构。

WenyinWei commented 4 years ago

辛苦开发者了,现在很多功能都已经很完备了,halo 用起来真舒服。我去问了一下腾讯云客服会不会有盗刷的风险,多设置一下防盗链就可以了。

image

看看需不需要专门开个 issue 或者在论坛里开个话题用来 track 各种云存储的用户反馈?因为云存储厂商发生的变化用它的用户第一个知道。而且这种讨论最好是支持 tab 分页的,这样不同厂商切换很方便。另外,对萌新也可以起到引导作用,腾讯云开子用户配置 secret ID/Key 并不简单,我可以贡献一下如何进行对应的操作。

ruibaby commented 4 years ago

@WenyinWei 有心了,这种类型的反馈我觉得放在论坛会更好。我们最近也正在重写文档,这些使用相关的教程也会陆续发布。