S3 请求模式
RustFS 符合 S3 协议。S3 支持两种请求模式:
- 虚拟主机样式
- 路径样式
区别在于存储桶名称的放置位置。
路径样式
路径样式是默认模式。在路径样式中,存储桶名称紧跟在端点后面。
示例(存储桶:test,主机:rustfs.com)
https://rustfs.cn/test注意:路径样式无需任何配置。
虚拟主机样式
在虚拟主机样式中,存储桶名称是域名的一部分。
示例(存储桶:test,主机:rustfs.com)
http://test.rustfs.com/配置
- DNS:配置通配符 DNS 解析(例如:
*.rustfs.com-> 服务器 IP)。 - 配置:修改配置文件(Linux:
/etc/default/rustfs,Docker/K8s:环境变量)。 - 设置域名:设置
RUSTFS_SERVER_DOMAINS = "rustfs.com"。 - 重启:重启服务(
systemctl restart rustfs)。
域名中的端口(可选)
如果您的域名是通过显式端口访问的,请将端口号包含在 RUSTFS_SERVER_DOMAINS 中。
示例(rustfs.com:9001)
ini
RUSTFS_SERVER_DOMAINS = "rustfs.com:9001"这将确保像这样的请求
http://test.rustfs.com:9001/在虚拟主机样式模式下能被正确解析。
⚠️ 注意:
RUSTFS_SERVER_DOMAINS的值必须与客户端请求使用的Host 标头(包括端口,如果存在)完全匹配。