87 lines
6.8 KiB
Markdown
87 lines
6.8 KiB
Markdown
|
|
**WebDAV** (Web Distributed Authoring and Versioning) — це розширення протоколу HTTP/HTTPS, яке перетворює вебсервер на віддалений мережевий диск.
|
|||
|
|
|
|||
|
|
Якщо спростити, WebDAV дозволяє працювати з файлами на віддаленому сервері так само, як із звичайною папкою на ПК: відкривати, редагувати, перейменовувати, видаляти та зберігати зміни напряму, без необхідності щоразу вручну завантажувати й скачувати файли через FTP чи браузер.
|
|||
|
|
|
|||
|
|
## Як WebDAV працює під капотом?
|
|||
|
|
|
|||
|
|
WebDAV додає до стандартних команд HTTP (`GET`, `POST`, `DELETE`) власні методи для роботи з файловою системою:
|
|||
|
|
|
|||
|
|
- **`PROPFIND`** / **`PROPPATCH`** — зчитування та зміна властивостей файлу (розмір, дата зміни, атрибути).
|
|||
|
|
|
|||
|
|
- **`MKCOL`** — створення нової папки (колекції).
|
|||
|
|
|
|||
|
|
- **`COPY`** / **`MOVE`** — копіювання та переміщення файлів на сервері без їх скачування на локальний ПК.
|
|||
|
|
|
|||
|
|
- **`LOCK`** / **`UNLOCK`** — блокування файлу під час редагування, щоб двоє користувачів не перезаписали зміни один одного одночасно.
|
|||
|
|
|
|||
|
|
|
|||
|
|
Оскільки протокол працює поверх стандартних вебпортів (**80** для HTTP та **443** для HTTPS), він легко проходить через більшість файрволів і NAT без додаткових налаштувань мережі.
|
|||
|
|
|
|||
|
|
## Основні варіанти застосування на практиці
|
|||
|
|
|
|||
|
|
### 1. Синхронізація додатків та нотаток
|
|||
|
|
|
|||
|
|
Багато програм використовують WebDAV як бекенд для приватного хмарного збереження даних без прив'язки до Google Drive чи Dropbox:
|
|||
|
|
|
|||
|
|
- **Obsidian / Logseq:** синхронізація баз нотаток між ПК та смартфоном.
|
|||
|
|
|
|||
|
|
- **KeePass / Strongbox:** збереження та автосинхронізація зашифрованої бази паролів.
|
|||
|
|
|
|||
|
|
- **Zotero / Joplin:** збереження документів, PDF та наукових статей.
|
|||
|
|
|
|||
|
|
|
|||
|
|
### 2. Підключення як мережевий диск в ОС
|
|||
|
|
|
|||
|
|
Ви можете змонтувати віддалене WebDAV-сховище безпосередньо у файловий менеджер системи.
|
|||
|
|
|
|||
|
|
- **Windows:** у «Цьому ПК» виберіть _Підключити мережевий диск_ і вкажіть адресу виду `[https://your-server.com/webdav/](https://your-server.com/webdav/)`.
|
|||
|
|
|
|||
|
|
- **Linux:** монтування через `davfs2` у `/etc/fstab` або швидкий доступ через GNOME Files / KDE Dolphin (`davs://[your-server.com/webdav/](https://your-server.com/webdav/)`).
|
|||
|
|
|
|||
|
|
- **macOS:** у Finder натисніть `Cmd + K` і введіть адресу `[https://your-server.com/webdav/](https://your-server.com/webdav/)`.
|
|||
|
|
|
|||
|
|
|
|||
|
|
### 3. Хмарні сховища (Nextcloud / ownCloud)
|
|||
|
|
|
|||
|
|
Платформи на кшталт Nextcloud мають вбудований WebDAV-сервер. Це дозволяє працювати з файлами через офіційний вебінтерфейс або підключати приватний папки до сторонніх застосунків за єдиним посиланням.
|
|||
|
|
|
|||
|
|
## Швидкий підйом власних WebDAV-серверів
|
|||
|
|
|
|||
|
|
Якщо вам потрібно розгорнути WebDAV у власному середовищі (наприклад, у Homelab чи локальній мережі):
|
|||
|
|
|
|||
|
|
### Варіант А: Docker (Static WebDAV)
|
|||
|
|
|
|||
|
|
Найпростіший спосіб підняти легковагий сервер за допомогою Nginx або готових Docker-образів:
|
|||
|
|
|
|||
|
|
YAML
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
version: '3.8'
|
|||
|
|
services:
|
|||
|
|
webdav:
|
|||
|
|
image: hacdias/webdav:latest
|
|||
|
|
container_name: webdav
|
|||
|
|
ports:
|
|||
|
|
- "8080:80"
|
|||
|
|
volumes:
|
|||
|
|
- ./data:/data
|
|||
|
|
- ./config.yaml:/config.yaml
|
|||
|
|
restart: unless-stopped
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### Варіант Б: Через SFTPGo або Nginx
|
|||
|
|
|
|||
|
|
Якщо у вас вже розгорнуто **SFTPGo**, WebDAV вмикається в конфігурації в пару кліків паралельно з SFTP та FTP. В **Nginx** можна використовувати модуль `http_dav_module`.
|
|||
|
|
|
|||
|
|
## Порівняння: WebDAV проти SMB, NFS та FTP
|
|||
|
|
|
|||
|
|
|**Протокол**|**Плюси**|**Мінуси**|**Основний кейс**|
|
|||
|
|
|---|---|---|---|
|
|||
|
|
|**WebDAV**|Працює через HTTPS (443 порт), легко проходити NAT, шифрування «з коробки», чудова підтримка мобільними додатками.|Поступається у швидкості для великих масивів дрібних файлів порівняно з SMB/NFS.|Віддалений доступ через інтернет, синхронізація додатків.|
|
|||
|
|
|**SMB (Samba)**|Нативна швидкість у Windows, ідеально для локальної мережі.|Важче прокидати через інтернет (блокується провайдерами, вимагає VPN).|Локальні мережеві папки в офісі/вдома.|
|
|||
|
|
|**NFS**|Висока продуктивність у Linux-середовищі.|Складніше налаштування прав доступу, слабка підтримка у Windows.|З'єднання між Linux-серверами.|
|
|||
|
|
|**FTP / SFTP**|Простий передавач файлів.|FTP застарів і нешифрований; SFTP чудовий для адміністрування, але гірше інтегрований у цивільні додатки.|Передавання файлів, бекапи, адміністрування.|
|
|||
|
|
|
|||
|
|
## Коротке резюме
|
|||
|
|
|
|||
|
|
WebDAV — це оптимальний вибір, коли вам потрібен **безпечний віддалений доступ до файлів через інтернет** (особливо з мобільних пристроїв або сторонніх програм) без необхідності піднімати повноцінний VPN-тунель для локальних мережевих протоколів на кшталт SMB.
|