附件
存储策略
为了能够更加灵活地管理附件的存储位置,Halo 提供了存储策略的概念。
Halo 默认提供了本地的存储策略类型,你还可以通过安装插件的方式扩展其他的存储策略类型。一个存储策略包含了存储提供者,具体存储位置等使用该类型存储所必要的各种信息。
目前除了 Halo 内置的本地存储,在应用市场中也有三方的存储插件:https://www.halo.run/store/apps?tag=storage
此外,如果你期望对接类似于阿里云、腾讯云的对象存储,可以考虑使用 对象存储(Amazon S3 协议) 插件,此插件兼容市面上所有支持 S3 协议的对象存储厂商。
你可以点击附件页面右上角的 存储策略
按钮对存储策略进行管理。
新建存储策略
点击存储策略列表右上方的 +
添加按钮即可新建一个存储策略。
添加时首先需要选择一种存储策略类型,系统内置的存储策略为本地存储,图中的 S3 对象存储
由对象存储(Amazon S3 协议)提供,此文档以本地存储为例。
添加一个本地存储时,你需要输入名称及存储位置信息。其中的存储位置决定了使用该存储策略的附件,在服务器上的实际存储路径,路径规则为 {Halo 工作目录}/attachments/{存储位置}
,其中的 Halo 工作目录由安装时指定的参数决定,默认为 ~/.halo2
。
默认的 Docker 部署方式,实际存储位置由挂载到 Halo 容器工作目录的服务器目录所决定。
管理存储策略
点击存储策略列表指定存储所在行后方的 ···
更多操作按钮即可对该存储策略进行编辑或删除。
为了保护附件安全避免用户误操作,当存储策略下存在附件时,该存储策略不允许删除。如果确定要删除某个存储策略及该存储策略中的所有附件,可以先按照存储策略对附件进行筛选,先批量删除存储策略下的所有附件,再删除存储策略。
附件分组
通过附件分组功能可以方便地将同一类型、同一用途的附件划分到一个分组中,方便后续附件的管理和插件。
附件所使用的存储策略决定了附件的实际存储位置和 URL 规则,而附件分组功能仅是逻辑上的归类划分,不会影响附件的存储位置及 URL。
新建分组
点击附件列表上方的 添加分组
按钮即可新建一个分组。
删除分组
点击附件列表上方指定分组上的 ···
更多按钮,可以对分组进行重命名或删除操作。
Halo 目前提供了两种分组删除策略:
-
删除并将附件移动至未分组:分组被删将被删除,分组下的附件移动到未分组中。
-
删除并同时删除附件:先删除下的所有附件后,再删除该分组。
注意当使用
删除并同时删除附件
方式时,分组下的所有附件会被同时删除且不可恢复、无法找回,请谨慎进行该操作。