Skip to content

Commit 91f938b

Browse files
authored
Clarify S3 URL construction priority for compatible providers (#3055)
* Clarify S3 URL construction priority for compatible providers * Apply suggestions from code review Co-authored-by: Pierre Wizla <pwizla+github@gmail.com>
1 parent 11afa71 commit 91f938b

1 file changed

Lines changed: 6 additions & 6 deletions

File tree

  • docusaurus/docs/cms/configurations/media-library-providers

docusaurus/docs/cms/configurations/media-library-providers/amazon-s3.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -276,23 +276,23 @@ In this case, use `s3.yourRegion.amazonaws.com` (without the bucket name) for th
276276

277277
## S3-compatible services
278278

279-
The AWS S3 provider works with S3-compatible services by using the `endpoint` option. The provider automatically constructs correct URLs for S3-compatible services that return incorrect `Location` formats for multipart uploads (e.g., IONOS, MinIO).
279+
The AWS S3 provider works with S3-compatible services by using the `endpoint` option. When an S3-compatible provider returns a valid URL in its upload response, the provider trusts that URL as-is, preserving the correct format (virtual-hosted or path-style) for the provider. For providers that return malformed URLs in multipart upload responses (e.g., IONOS, some MinIO configurations), the provider falls back to constructing the URL from the `endpoint` configuration.
280280

281281
Some providers require `forcePathStyle: true` in the `s3Options`. This option is needed when the provider does not support virtual-hosted-style URLs (e.g., `bucket.endpoint.com`), and instead uses path-style URLs (e.g., `endpoint.com/bucket`).
282282

283283
The following table shows compatibility settings for each provider:
284284

285285
| Provider | `forcePathStyle` | `ACL` | Notes |
286286
| ------------------- | ---------------- | ----------------- | --------------------------------- |
287-
| IONOS | `true` | Supported | Multipart `Location` bug auto-fixed |
288-
| MinIO | `true` | Supported | - |
287+
| IONOS | `true` | Supported | Malformed multipart `Location` auto-fixed via endpoint fallback |
288+
| MinIO | `true` | Supported | Some configurations may return malformed `Location`; auto-fixed via endpoint fallback |
289289
| Contabo | `true` | Supported | - |
290290
| Hetzner | `true` | Supported | - |
291-
| DigitalOcean Spaces | Not needed | Supported | - |
291+
| DigitalOcean Spaces | Not needed | Supported | Returns correct virtual-hosted URLs |
292292
| Wasabi | Not needed | Supported | - |
293-
| Scaleway | Not needed | Supported | - |
293+
| Scaleway | Not needed | Supported | Returns correct virtual-hosted URLs |
294294
| Vultr | Not needed | Supported | - |
295-
| Backblaze B2 | Not needed | Supported | - |
295+
| Backblaze B2 | Not needed | Supported | Returns correct virtual-hosted URLs |
296296
| Cloudflare R2 | Not needed | Not supported | Omit `ACL` from parameters |
297297

298298
### Scaleway

0 commit comments

Comments
 (0)