diff --git a/content/docs/configuration/cdn/s3.mdx b/content/docs/configuration/cdn/s3.mdx index 9e4c6f3..ecf579e 100644 --- a/content/docs/configuration/cdn/s3.mdx +++ b/content/docs/configuration/cdn/s3.mdx @@ -91,13 +91,15 @@ AWS_SECRET_ACCESS_KEY=your_secret_access_key AWS_REGION=your_selected_region AWS_BUCKET_NAME=your_bucket_name AWS_ENDPOINT_URL=your_endpoint_url +# AWS_FORCE_PATH_STYLE=false ``` - **AWS_ACCESS_KEY_ID:** Your IAM user's access key. - **AWS_SECRET_ACCESS_KEY:** Your IAM user's secret key. - **AWS_REGION:** The AWS region where your S3 bucket is located. - **AWS_BUCKET_NAME:** The name of the S3 bucket you created. -- **AWS_ENDPOINT_URL:** (Optional) The custom AWS endpoint URL +- **AWS_ENDPOINT_URL:** (Optional) The custom AWS endpoint URL. Required for S3-compatible services such as MinIO, Cloudflare R2, Hetzner Object Storage, and Backblaze B2. +- **AWS_FORCE_PATH_STYLE:** (Optional) Set to `true` for providers that require path-style URLs (`endpoint/bucket/key`) rather than virtual-hosted-style (`bucket.endpoint/key`). Required for Hetzner Object Storage, MinIO, and similar providers whose SSL certificates don't cover bucket subdomains. Not needed for AWS S3 or Cloudflare R2. Default: `false`. If you are using **IRSA** on Kubernetes, you do **not** need to set `AWS_ACCESS_KEY_ID` and `AWS_SECRET_ACCESS_KEY` in your environment. The AWS SDK will automatically obtain temporary credentials via the service account assigned to your pod. Ensure that `AWS_REGION` and `AWS_BUCKET_NAME` are still provided. diff --git a/content/docs/configuration/dotenv.mdx b/content/docs/configuration/dotenv.mdx index 218a263..75474ec 100644 --- a/content/docs/configuration/dotenv.mdx +++ b/content/docs/configuration/dotenv.mdx @@ -1298,6 +1298,7 @@ If you are using S3 as your file storage strategy, make sure to set the `file_st ['AWS_REGION', 'string', 'The AWS region where your S3 bucket is located.', 'AWS_REGION=us-east-1'], ['AWS_BUCKET_NAME', 'string', 'The name of the S3 bucket for file storage.', 'AWS_BUCKET_NAME=your_bucket_name'], ['AWS_ENDPOINT_URL', 'string', 'Custom AWS endpoint URL (optional). For S3-compatible services.', '# AWS_ENDPOINT_URL='], + ['AWS_FORCE_PATH_STYLE', 'boolean', 'Set to true for S3-compatible providers that require path-style URLs (e.g. MinIO, Hetzner, Backblaze B2). Not needed for AWS S3. Default: false.', '# AWS_FORCE_PATH_STYLE=false'], ]} />