26 lines
804 B
Python
26 lines
804 B
Python
"""Minimal WebDAV server. Serves /data for uploads. Auth handled at reverse tunnel."""
|
|
from wsgidav.fs_dav_provider import FilesystemProvider
|
|
from wsgidav.wsgidav_app import WsgiDAVApp
|
|
from wsgidav.dir_browser import WsgiDavDirBrowser
|
|
from wsgidav.error_printer import ErrorPrinter
|
|
from wsgidav.request_resolver import RequestResolver
|
|
from wsgidav.mw.cors import Cors
|
|
from cheroot.wsgi import Server as WSGIServer
|
|
|
|
ROOT = "/data"
|
|
PORT = 80
|
|
|
|
config = {
|
|
"host": "0.0.0.0",
|
|
"port": PORT,
|
|
"provider_mapping": {"/": FilesystemProvider(ROOT, readonly=False)},
|
|
"middleware_stack": [Cors, ErrorPrinter, WsgiDavDirBrowser, RequestResolver],
|
|
"verbose": 3,
|
|
}
|
|
|
|
app = WsgiDAVApp(config)
|
|
|
|
if __name__ == "__main__":
|
|
server = WSGIServer((config["host"], config["port"]), app)
|
|
server.start()
|