WebDAV Transfer Module¶
The webdav module transfers files to and from remote WebDAV servers (RFC 4918). It supports HTTPS and HTTP, optional write locking, automatic parent-directory creation, and configurable TLS versions.
Connection¶
webdav.scheme = "https" # https (default) or http
webdav.port = "443" # remote port
webdav.username = "myuser" # login (overrides host credentials)
webdav.password = "secret" # password (overrides host credentials)
webdav.path = "/webdav/data" # base path prepended to every resource URL
webdav.sslValidation = "false" # set true to enforce certificate validation
webdav.proxy = "proxy.example.com:3128" # optional HTTP proxy
Timeouts¶
webdav.connectTimeout = "PT30S" # connection timeout (ISO-8601 duration, default 30 s)
webdav.socketTimeout = "PT300S" # socket read timeout (default 300 s)
TLS protocols¶
Write locking (RFC 4918)¶
When useLock is enabled, the module sends a LOCK request before each upload and UNLOCK after, preventing concurrent writes from other clients.
webdav.useLock = "true" # enable exclusive write locking
webdav.lockTimeout = "300" # lock duration in seconds (0 = infinite)
webdav.lockOwner = "ecpds" # owner string recorded in the lock
Directory creation¶
Full option reference¶
| Option | Description |
|---|---|
webdav.scheme | URL scheme: https (default) or http |
webdav.port | Remote port — defaults to 443 (HTTPS) or 80 (HTTP) |
webdav.username | Login for HTTP Basic authentication (overrides host setting) |
webdav.password | Password for HTTP Basic authentication (overrides host setting) |
webdav.path | Base path prepended to every resource URL (default: /) |
webdav.sslValidation | When set, validates the server SSL certificate against the trust store |
webdav.supportedProtocols | Comma-separated TLS versions to accept, e.g. TLSv1.2,TLSv1.3 |
webdav.proxy | HTTP proxy in host:port format, e.g. proxy.example.com:3128 |
webdav.connectTimeout | Connection timeout in seconds (0 = infinite, default: 30) |
webdav.socketTimeout | Read timeout in seconds (0 = infinite, default: 300) |
webdav.useLock | Request an exclusive write lock (RFC 4918) before each upload |
webdav.lockTimeout | Lock duration in seconds (0 = infinite); only used when webdav.useLock is set |
webdav.lockOwner | Owner string recorded in the lock request (default: ecpds) |
webdav.mkdirs | Create missing parent directories via MKCOL before uploading |