Storage Configuration
Palpo stores media files via a configurable storage backend. By default it uses the local filesystem. You can switch to S3-compatible object storage via the [storage] section.
Palpo uses Apache OpenDAL as its storage abstraction layer, which means the S3 backend is compatible with any S3-compatible object storage service, including:
- AWS S3
- Cloudflare R2
- MinIO
- Backblaze B2
- Alibaba Cloud OSS (S3-compatible mode)
- Tencent Cloud COS (S3-compatible mode)
- And any other service implementing the S3 API
Local Filesystem (Default)
S3-Compatible Storage
When redirect is enabled (the default), media download requests return a 302 redirect to a time-limited presigned S3 URL. Clients download directly from S3, which saves server bandwidth and reduces latency. The presigned URL is scoped to a single object and expires after presign_expiry seconds. Set redirect = false to proxy all media through the Palpo server instead.
Configuration Reference
Filesystem backend (backend = "fs"):
S3 backend (backend = "s3"):
Examples for Popular Providers
Cloudflare R2:
MinIO: