docs: migrate legacy docs to official site

This commit is contained in:
Diocrafts
2026-04-22 07:50:41 +02:00
parent e10a908f07
commit c0cb86c273
63 changed files with 1646 additions and 10136 deletions
+72
View File
@@ -33,6 +33,65 @@ Always use HTTPS in production — Basic auth sends credentials in every request
| `DELETE` | Delete a file/folder |
| `LOCK` / `UNLOCK` | File locking |
## Common Operations
### List a directory
Use `PROPFIND` with a `Depth` header:
```http
PROPFIND /webdav/projects/ HTTP/1.1
Depth: 1
Content-Type: application/xml
<?xml version="1.0" encoding="utf-8" ?>
<D:propfind xmlns:D="DAV:">
<D:allprop/>
</D:propfind>
```
Successful directory listings return `207 Multi-Status`.
### Download a file
```http
GET /webdav/projects/document.pdf HTTP/1.1
Authorization: Basic base64(username:password)
```
### Upload or replace a file
```http
PUT /webdav/projects/document.pdf HTTP/1.1
Content-Type: application/pdf
<file bytes>
```
### Create a folder
```http
MKCOL /webdav/projects/new-folder HTTP/1.1
```
### Move or copy
```http
MOVE /webdav/old-location.pdf HTTP/1.1
Destination: https://your-server/webdav/new-location.pdf
```
```http
COPY /webdav/original.pdf HTTP/1.1
Destination: https://your-server/webdav/copy.pdf
```
### Delete a resource
```http
DELETE /webdav/projects/document.pdf HTTP/1.1
```
## Client Setup
### Windows Explorer
@@ -78,3 +137,16 @@ curl -u user:pass -X MKCOL https://your-server:8086/webdav/new-folder/
## Streaming PROPFIND
OxiCloud streams PROPFIND responses, so listing directories with thousands of files doesn't consume excessive memory.
## Integration Notes
- the WebDAV handler is only an HTTP adapter; file and folder operations still go through the same application services used by the REST API
- HTTP Basic Authentication is supported for DAV clients, while authorization rules remain the same as the rest of OxiCloud
- delete operations integrate with trash when the trash feature is enabled
## Troubleshooting
- Always use the `/webdav/` base path
- Prefer HTTPS because WebDAV uses Basic Authentication
- On Windows, make sure the `WebClient` service is enabled
- OxiCloud rejects path traversal segments such as `.` and `..` at the HTTP boundary