Skip to main content

An asynchronous WebDAV server implementation, support multi-provider.

Project description

ASGI WebDAV Server

GitHub PyPI Pytest Workflow Status codecov Code style: black Docker Pulls PyPI - Downloads GitHub Downloads

An asynchronous WebDAV server implementation, Support multi-provider, multi-account and permission control.

Features

  • ASGI standard
  • WebDAV standard: RFC4918
  • Support multi-provider: FileSystemProvider, MemoryProvider
  • Support multi-account and permission control
  • Support optional home directory
  • Support store password in raw/hashlib/LDAP(experimental) mode
  • Full asyncio file IO
  • Passed all litmus(0.13) test, except 3 warning
  • Browse the file directory in the browser
  • Support HTTP Basic/Digest authentication
  • Support response in Gzip/Brotli
  • Compatible with macOS finder and Window10 Explorer

Python Version

v3.10+

Quickstart

中文手册

docker pull ray1ex/asgi-webdav
docker run -dit --restart unless-stopped \
  -p 8000:8000 \
  -e UID=1000 -e GID=1000 \
  -v /your/data:/data \
  --name asgi-webdav ray1ex/asgi-webdav

Default Account

value description
username username -
password password -
permission ["+"] Allow access to all directories

View in Browser

View in Browser

Documentation

Documentation at GitHub Page

TODO

  • Digest auth support neon
  • SQL database provider
  • Test big(1GB+) file in MemoryProvider
  • display server info in page /_/admin or /_/
  • Fail2ban(docker)
  • NFSProvider
  • logout at the web page
  • Fix MemoryProvider with macOS finder(create new file)
  • rewrite MemoryProvider with mmap
  • generate template URL for share(read only)

Related Projects

Project details


Download files

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

Source Distribution

ASGIWebDAV-1.4.0.tar.gz (59.6 kB view details)

Uploaded Source

Built Distribution

ASGIWebDAV-1.4.0-py3-none-any.whl (58.6 kB view details)

Uploaded Python 3

File details

Details for the file ASGIWebDAV-1.4.0.tar.gz.

File metadata

  • Download URL: ASGIWebDAV-1.4.0.tar.gz
  • Upload date:
  • Size: 59.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.2

File hashes

Hashes for ASGIWebDAV-1.4.0.tar.gz
Algorithm Hash digest
SHA256 7b1baeddd63440772f6ad3bd62f9f2545286d4d5a0b4e3c548a805ecdefe4206
MD5 af30f264ed79b81fbf8611e1fae2e07a
BLAKE2b-256 ddfbbd8ddceee111f97605bbf60f9d3fa286640173b06772298fc57f12c4820c

See more details on using hashes here.

File details

Details for the file ASGIWebDAV-1.4.0-py3-none-any.whl.

File metadata

  • Download URL: ASGIWebDAV-1.4.0-py3-none-any.whl
  • Upload date:
  • Size: 58.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.2

File hashes

Hashes for ASGIWebDAV-1.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b8549762ec9f61888c1ef313f9cda40df4759a8f0a1cbcbf7c00d5c42817d911
MD5 a66a2991d107341824e83f7c253453b4
BLAKE2b-256 d105c485ca71b061f4952941e2311cfe7f738658efed3f5d0df14cab598440b5

See more details on using hashes here.

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