logo WsgiDAV Documentation

A generic and extendable WebDAV server written in Python and based on WSGI.




4.3, Date: May 19, 2024

Build Status PyPI Version License Documentation Status

Main Features

  • Comes bundled with a server and a file system provider, so we can share a directory right away from the command line.

  • Designed to run behind any WSGI compliant server.

  • Tested with different clients on different platforms (Windows, Linux, Mac).

  • Supports online editing of MS Office documents.

  • Contains a simple web browser interface.

  • SSL support

  • Support for authentication using Basic or Digest scheme.

  • Passes the litmus test suite.

  • Open architecture allows to Writing Custom Providers (i.e. storage, locking, authentication, virtual file systems, …).

  • WsgiDAV is a refactored version of PyFileServer written by Ho Chun Wei.


Release 4.0 introduces some refactorings and breaking changes.
See Release Info for details.


Releases are hosted on PyPI. Install WsgiDAV (and a server) like:

$ pip install cheroot wsgidav


MS Windows users that only need the command line interface may prefer the MSI installer or install using the Windows Package Manager:

> winget install wsgidav

To serve the /tmp folder as WebDAV / share with anonymous read-write access, simply run:

$ wsgidav --host= --port=80 --root=/tmp --auth=anonymous

Then open http://HOST/ in your browser or pass this URL to another WebDAV-aware client, such as MS Word, macOS Finder, Windows File Explorer, …

On Linux we can enforce authentication against known users (e.g. /etc/passwd, /etc/shadow) like so:

$ wsgidav --host= --port=80 --root=/tmp --auth=pam-login

On Windows we can enforce authentication against known users (e.g. Windows NT Domain Controller) like so:

> wsgidav --host= --port=80 --root=/tmp --auth=nt

There is much more to configure. Read this docs to find out.

Supported Clients

WsgiDAV comes with a web interface and was tested with different clients (Windows File Explorer and drive mapping, MS Office, Ubuntu, Mac OS X, …).