WebDAV — что это, настройка в Nginx и монтирование на Linux | Глоссарий FREEHOSTING

WebDAV

Web Distributed Authoring and Versioning
WebDAV — WebDAV — расширение HTTP/1.1 (RFC 4918), превращающее веб-сервер в сетевую файловую систему. Поддерживает чтение, запись, блокировку и управление свойствами файлов поверх 80/443 порта, минуя ограничения корпоративных файрволов.

Определение простыми словами

WebDAV — это HTTP с дополнительными методами PROPFIND, MKCOL, COPY, MOVE, LOCK и UNLOCK. Браузер открывает страницу через GET, а WebDAV-клиент с теми же URL может создавать папки, перемещать файлы и блокировать документы для совместного редактирования. Всё работает поверх 443 порта, который никогда не закрыт корпоративным файрволом.

На сервере WebDAV реализуют Nginx (модуль http_dav_module), Apache (mod_dav), а также Nextcloud, ownCloud, Sabre/DAV. Клиенты встроены в Windows («Сетевой диск» по WebDAV), macOS (Finder → «Подключение к серверу»), GNOME, KDE, в мобильные файловые менеджеры. Это удобный аналог SFTP и FTP, не требующий открытия специальных портов.

Сравнение

Параметр WebDAV SFTP FTP SMB
Транспорт HTTP/HTTPS SSH TCP/21 TCP/445
Шифрование через TLS встроено опционально (FTPS) SMB 3.0+
Прохождение через файрвол отлично (порт 443) хорошо (22) плохо (PASV) часто блокируется
Блокировка файлов встроена (LOCK) нет нет оппортунистическая
Скорость средняя средняя высокая высокая
Совместная работа да нет нет да

Кейсы использования

  • Nextcloud-инсталляция отдаёт 50 ТБ корпоративного облака клиентам через WebDAV без VPN.
  • Дизайнеры в Adobe Illustrator подключают сетевой диск по WebDAV и кладут макеты прямо в репозиторий.
  • 1С:Документооборот хранит вложения в WebDAV-хранилище, версионирует через свойства DAV.
  • Хостинг даёт WebDAV-доступ к домашнему каталогу как альтернативу классическому FTP, проходящую через корпоративный прокси.
  • Негативный сценарий: WebDAV-сервер опубликован без аутентификации — индексируется поисковиками, утечка приватных файлов через site:example.com.

Технические детали

# Включение WebDAV в Nginx
location /webdav/ {
    root /var/www;
    dav_methods PUT DELETE MKCOL COPY MOVE;
    dav_ext_methods PROPFIND OPTIONS LOCK UNLOCK;
    create_full_put_path on;
    dav_access user:rw group:rw all:r;
    auth_basic "WebDAV";
    auth_basic_user_file /etc/nginx/.htpasswd;
}

# Монтирование WebDAV-каталога на Linux
sudo apt install davfs2
sudo mount -t davfs https://files.example.com/webdav /mnt/dav

# Загрузка файла через curl
curl -T report.pdf -u user:pass https://files.example.com/webdav/report.pdf

# Получение списка файлов методом PROPFIND
curl -X PROPFIND -u user:pass https://files.example.com/webdav/ 
  -H "Depth: 1"

Часто используется в связке с Nginx или Apache как фронт. Подробнее о защищённой передаче файлов — в материале про SFTP.

Частые вопросы

Можно ли использовать WebDAV без HTTPS?

Технически да, протокол работает поверх обычного HTTP. Но при базовой аутентификации логин и пароль уходят в открытом виде, поэтому WebDAV без TLS допустим только в изолированных сетях.

Почему Windows плохо работает с WebDAV?

Встроенный клиент Windows WebClient требует Basic-аутентификации поверх HTTPS и имеет лимит файла 50 МБ по умолчанию. Лимит расширяется через реестр (FileSizeLimitInBytes), для больших файлов лучше использовать сторонние клиенты — CarotDAV или Cyberduck.

WebDAV подходит для постоянной работы как сетевой диск?

Для редкого доступа и совместной работы — да. Для интенсивного I/O и баз данных — нет: HTTP-оверхед даёт задержки в 5–10 раз больше, чем у SMB или NFS, плюс нет настоящих блокировок на уровне файловой системы.