Architecture

Component Diagram

Diagram

Data Flow

All protocols serve the same directory (/var/www/html/webdav/), ensuring files uploaded via FTP are immediately accessible via WebDAV and vice versa.

WebDAV Flow

Diagram

FTP Flow

Diagram

Shared Storage

Both Nginx and vsftpd access the same directory. File permissions are managed through ACLs to ensure both services and configured users have read/write access.

/var/www/html/webdav/      <-- Shared root directory
├── tmp/                   <-- Nginx client_body_temp_path
├── firmware/              <-- Example subdirectory
│   ├── v1.0.bin
│   └── v2.0.bin
└── configs/               <-- Example subdirectory
    └── device.xml