本文最后更新于 911 天前,其中的信息可能已经有所发展或是发生改变。
为了方便文件归档和存储,将论坛的图片等文件独立于网站服务器是非常有必要的。
Flarum 的 FOF upload 插件支持 Amazon S3 协议,但在网上至今仍无法找到任意关于 Flarum 与腾讯云COS对接的教程,导致配置过程中四处碰壁。
后来本人参考了阿里云的配置方法和腾讯云官方文档,最终成功配置存储,更方便了后续的图片审核和压缩等功能。
相关仓库
Flarum: https://github.com/flarum/flarum
FOF upload: https://github.com/FriendsOfFlarum/upload
FOF upload AWS S3扩展: https://github.com/FriendsOfFlarum/upload/wiki/aws-s3
配置教程
在这之前,你需要做的:
- 正确的在服务器安装并配置 Flarum。
- 正确的安装了 FOF upload 插件及其 S3 扩展。
- 关闭站点的 open_basedir 防跨站,安装 PHP 的 exif 扩展。
- 开通腾讯云COS(对象存储)服务,并创建一个存储桶。
这些内容不一一赘述,在官方文档或搜索引擎都有详尽的教程。
完成了这些步骤后,即可进行配置:
首先,进入 flarum 的管理后台,选择 fof upload 插件。对存储偏好进行设置:
进入腾讯云 访问管理CAM ,选择访问密钥->API密钥管理,新建一套密钥:
在这里可以选择 新建子账号并使用其API 来保证主账号安全性,防止密钥泄露对主账号的威胁。
如果使用子账号,别忘了去存储桶控制台选择权限管理,添加相应权限(使用主账号key可跳过此步骤)。
此时重新进入 flarum 的 fof upload 后台配置,直接拉到下方:
此处各项设置如下:
- 文件链接前缀 / 对象存储 CDN 或访问域名:
https://【存储桶名】.cos.【所属地域】.myqcloud.com - AWS S3 存储设置:
- Key: API密钥 SecretId (访问管理CAM)
- Secret: API密钥 SecretKey
- 存储空间: 存储桶名
- 地域: 填 Auto 即可
- 高级 S3 存储设置:
- 访问域名: https://cos.【所属地域】.myqcloud.com
- 访问控制列表: 本人填写 public-read ,其他权限待测试
- *注意:存储桶名应为 用户设定名-appid 的组合,如 bbs-1919810。
所属地域应为英文格式,如 ap-guangzhou ,这两项均可在控制台基本信息查询到。
完成上述设置后,点击保存,即可进入论坛试用你的上传功能了!