DAV-Ext#
This module extends WebDAV support with the PROPFIND, OPTIONS, LOCK, and UNLOCK methods.
The standard DAV module provides a partial implementation of
WebDAV and supports only the GET, HEAD, PUT, DELETE, MKCOL, COPY, and MOVE methods.
For full WebDAV support, you need to enable the standard
To install the module, use one of the
following packages: Angie: Angie PRO: Load the module in the Uploading a file to the server: Overwriting the same file: Locking the file from being overwritten: Attempting to overwrite the file: The file is locked. Unlocking the file: Overwriting the file: The file has been successfully unlocked and overwritten. Detailed documentation and source code are available at:
arut/nginx-dav-ext-modulehttp_dav_module module, as well as this module for the missing methods.Installation#
angie-module-dav-extangie-pro-module-dav-extLoading the Module#
main{} context:load_module modules/ngx_http_dav_ext_module.so;
Configuration Example#
dav_ext_lock_zone zone=lock_zone:10m;
server {
listen 80 default_server;
location / {
root /usr/share/angie/html;
dav_methods PUT DELETE MKCOL COPY MOVE;
dav_ext_methods PROPFIND OPTIONS LOCK UNLOCK;
dav_ext_lock zone=lock_zone;
}
}
Request Execution Examples#
$ curl -i -X PUT -d @testf1.txt http://127.0.0.1/testf1.txt
HTTP/1.1 201 Created
Server: Angie/1.10.3
Date: Thu, 21 Aug 2025 19:15:35 GMT
Content-Length: 0
Location: http://127.0.0.1/testf1.txt
Connection: keep-alive
$ curl -i -X PUT -d @testf1.txt http://127.0.0.1/testf1.txt
HTTP/1.1 204 No Content
Server: Angie/1.10.3
Date: Thu, 21 Aug 2025 19:15:35 GMT
Connection: keep-alive
$ curl -i -X LOCK http://127.0.0.1/testf1.txt
HTTP/1.1 200 OK
Server: Angie/1.10.3
Date: Thu, 21 Aug 2025 19:15:35 GMT
Content-Type: text/xml; charset=utf-8
Content-Length: 392
Connection: keep-alive
Lock-Token: <urn:7502d56f>
$ curl -i -X PUT -d @testf1.txt http://127.0.0.1/testf1.txt
HTTP/1.1 423
Server: Angie/1.10.3
Date: Thu, 21 Aug 2025 19:15:35 GMT
Content-Length: 0
Connection: keep-alive
$ curl -i -X UNLOCK -H 'Lock-Token: <urn:7502d56f>' http://127.0.0.1/testf1.txt
HTTP/1.1 204 No Content
Server: Angie/1.10.3
Date: Thu, 21 Aug 2025 19:15:35 GMT
Connection: keep-alive
$ curl -i -X PUT -d @testf1.txt http://127.0.0.1/testf1.txt
HTTP/1.1 204 No Content
Server: Angie/1.10.3
Date: Thu, 21 Aug 2025 19:15:35 GMT
Connection: keep-alive
Additional Information#