Skip to main content

Generic and extendable WebDAV server based on WSGI

Project description

logo WsgiDAV

Tests Latest Version License Documentation Status codecov Released with: Yabs StackOverflow: WsgiDAV

Edit online in vscode.dev Open in Visual Studio Code (experimental)

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

Main features:

  • WsgiDAV is a stand-alone WebDAV server with SSL support, that can be installed and run as Python command line script on Linux, OSX, and Windows:

    $ pip install wsgidav cheroot
    $ wsgidav --host=0.0.0.0 --port=80 --root=/tmp --auth=anonymous
    Running without configuration file.
    10:54:16.597 - INFO    : WsgiDAV/4.0.0-a1 Python/3.9.1 macOS-12.0.1-x86_64-i386-64bit
    10:54:16.598 - INFO    : Registered DAV providers by route:
    10:54:16.598 - INFO    :   - '/:dir_browser': FilesystemProvider for path '/Users/martin/prj/git/wsgidav/wsgidav/dir_browser/htdocs' (Read-Only) (anonymous)
    10:54:16.599 - INFO    :   - '/': FilesystemProvider for path '/tmp' (Read-Write) (anonymous)
    10:54:16.599 - WARNING : Basic authentication is enabled: It is highly recommended to enable SSL.
    10:54:16.599 - WARNING : Share '/' will allow anonymous write access.
    10:54:16.813 - INFO    : Running WsgiDAV/4.0.0-a1 Cheroot/8.5.2 Python 3.9.1
    10:54:16.813 - INFO    : Serving on http://0.0.0.0:80 ...
    

    Run wsgidav --help for a list of available options.

  • The python-pam library is needed as extra requirement if pam-login authentication is used on Linux or OSX:

    $ pip install wsgidav[pam]
    $ wsgidav --host=0.0.0.0 --port=8080 --root=/tmp --auth=pam-login
    
  • Note: Windows users may prefer the MSI Installer (see Assets section), or use winget:

    > winget install wsgidav
    
  • WebDAV is a superset of HTTP, so WsgiDAV is also a performant, multi-threaded web server with SSL support.

  • WsgiDAV is also a Python library that implements the WSGI protocol and can be run behind any WSGI compliant web server.

  • WsgiDAV is implemented as a configurable stack of WSGI middleware applications.
    Its open architecture allows to extend the functionality and integrate WebDAV services into your project.
    Typical use cases are:

    • Expose data structures as virtual, editable file systems.
    • Allow online editing of MS Office documents.

Status

Latest Version See the (change log) for details.

Note: Release 4.0 introduces some refactorings and breaking changes.
See the (change log) for details.

More info

Credits

Contributors:

Any kind of feedback is very welcome!
Have fun :-)
Martin

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

wsgidav-4.3.3.tar.gz (168.1 kB view hashes)

Uploaded Source

Built Distribution

WsgiDAV-4.3.3-py3-none-any.whl (165.0 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page