文件上传配置

Homeland 目前支持两种文件存储方式:

在部署之前,你需要选择一种,并购买,然后根据下面的文档配置 Homeland。

配置项 解释 需要重启?
upload_provider 文件存储方式 [file, upyun, aliyun]
upload_access_id 文件存储 access_id 或用户名
upload_access_secret 文件存储 access_secret 或密码
upload_bucket 文件存储 Bucket 名称
upload_url 文件存储的 Host

File

本地存储上传文件,存放在 public/uploads 目录下。

NOTE: file 模式无法实现分布式部署哦!我们建议使用 UpYun 或 Aliyun 这样既有很好的响应速度,也无需额外备份本地文件。

File 模式需要 Nginx image_filter module 配合才能生存缩略图。 安装比较复杂,如果技能不熟练,请采用 Docker 模式部署。

# [uploader]
upload_provider=file
# upload_host 留空
upload_host=

UpYun

# [uploader]
upload_provider=upyun
upload_access_id=username
upload_access_secret=password
upload_bucket=your-bucket
upload_url=http://your-bucket.b0.upaiyun.com

Aliyun OSS

创建 Bucket 的时候,请选择 公共读 模式。

Aliyun OSS 相比 UpYun 多了两项配置:

配置项 解释 需要重启?
upload_aliyun_internal 如果是阿里云的服务器,这里设置 true 将能获得更快的上传速度
upload_aliyun_region 阿里云服务器区域,例如: cn-shanghai

例如:

upload_provider=aliyun
upload_access_id=access-id
upload_access_secret=access-secret
upload_bucket=your-bucket
upload_url=http://your-bucket.host.com
upload_aliyun_internal=false
upload_aliyun_region=cn-shanghai

Qinniu

upload_provider=qiniu
upload_access_id=your-qiniu-access-key
upload_access_secret=your-qiniu-secret-key
upload_bucket=your-qiniu-bucket-name
upload_url=http://your.qiniu.domian.name.com

图片缩略图

Hoemeland 上传图片需要依赖云服务的图片缩略图功能。

开启 间隔标识符

UpYun 使用感叹号 ! (应该默认已开启), AliyunQiniu 无需配置,Homeland 内置支持。

缩略图版本

请在对应的平台管理界面按下面的表格设置 缩略图版本

版本名称 限定尺寸 (px) 缩略方式
large 1920 限定宽度,高度自适应
lg 192x192 固定宽度和高度
md 96x96 固定宽度和高度
sm 48x48 固定宽度和高度
xs 32x32 固定宽度和高度

例如: UpYun 的部分配置截图

开启 CORS 跨域共享

个人设置页面有通过 AJAX 请求强制刷新头像缓存的动作,你需要配置 UpYun 开启 CORS 跨域共享 功能:

允许的域 Methods Allow Headers Expose Headers
http://your-host.com GET, HEAD, OPTIONS Pragma Pragma

NOTE: 允许的域注意 http 还是 https,确保和你正常访问你网站的地址一样,例如: https://ruby-china.org