DEV Community

疏影
疏影

Posted on

WebDAV vs S3: Which Protocol Is Right for Your Mount


Two protocols, one goal

Both WebDAV and S3 are designed to give you remote file access. Both work with mount clients. But they have fundamentally different design philosophies. Choosing the wrong one for your use case means extra pain.

This article helps you pick.

WebDAV: HTTP with verbs

WebDAV is an extension to HTTP. It adds new methods: PROPFIND, PROPPATCH, MKCOL, COPY, MOVE, LOCK, UNLOCK. These let you do file operations over a single HTTP connection.

The good:

  • Works through any HTTP proxy
  • Plain HTTP/HTTPS, easy to debug
  • Supports locking out of the box
  • Single port (443), easy firewall rules
  • Wide server support (Apache, Nginx, Nextcloud, ownCloud, Seafile)

The bad:

  • No native streaming for large files (you have to download fully then upload)
  • Performance scales poorly past 10GB
  • Server implementations vary wildly
  • Authentication is often weak (Basic auth over HTTPS, or cookies)

S3: object storage with parts

S3 is an object store from AWS. The protocol is REST-based like WebDAV, but optimized for huge objects and parallel I/O.

The good:

  • Multipart upload (parallel chunks)
  • Streaming (you don't need to buffer the whole file)
  • Massive scale (single bucket can hold trillions of objects)
  • Strong consistency model
  • Built-in versioning
  • Many compatible servers: MinIO, Wasabi, Backblaze B2, Cloudflare R2

The bad:

  • No locking (you have to implement optimistic locking yourself)
  • Final consistency in some operations
  • Object key model doesn't map perfectly to file paths
  • More complex to set up than WebDAV

When to use WebDAV

Pick WebDAV when:

  • You have a small-to-medium amount of data (under 1TB)
  • You want simple, file-based access
  • You're self-hosting with Nextcloud / ownCloud / Seafile
  • You need locking (multiple users editing the same file)
  • You want it to "just work" through firewalls and proxies

The killer use case: personal cloud with Nextcloud. Install Nextcloud, get WebDAV for free, mount it with ScsDriver. Done.

When to use S3

Pick S3 when:

  • You have lots of data (10TB+)
  • You do large file transfers (videos, backups, datasets)
  • You need parallel uploads for speed
  • You want built-in versioning
  • You're okay with object semantics (not file paths)

The killer use case: backup target. Run MinIO at home or use Wasabi / Backblaze B2 in the cloud. Mount it with ScsDriver. Run Restic / Duplicati against the mount.

Hybrid: both

You can use both. Many people do.

  • Nextcloud for active files (documents, photos, projects)
  • S3 (MinIO or B2) for backups and archives

ScsDriver supports both protocols. Configure two mount points, one for each.

Cost comparison

For 2TB of data:

Option Year 1 Year 5
Google Drive $119 $595
Dropbox Plus $119 $595
Backblaze B2 (S3-compatible) $60 $300
Wasabi (S3-compatible) $70 $350
Self-hosted (Nextcloud + ScsDriver + $300 hardware) $320.5 $15 (year 2+)

For 10TB of data:

Option Year 1 Year 5
Google Drive (max 30TB) $300 $1500
Backblaze B2 $300 $1500
Wasabi $350 $1750
Self-hosted (Nextcloud + ScsDriver + $700 hardware) $720.5 $15 (year 2+)

My recommendation

If you have < 2TB and want a personal cloud: Nextcloud + WebDAV + ScsDriver.

If you have > 2TB or focus on backups: S3 (MinIO for self-host, B2/Wasabi for cloud) + ScsDriver.

If you have both use cases: run both.

Pricing recap (overseas, ScsDriver)

  • $1.5 monthly
  • $5.5 yearly
  • $5.5 lifetime (was $9.99)

For users in mainland China, the package is sold at CN ¥20 lifetime (separate pricing region).

Top comments (0)