WebDAV

WebDAV (Web Distributed Authoring and Versioning) или просто DAV — набор расширений и дополнений к протоколу HTTP, поддерживающих совместную работу пользователей над редактированием файлов и управление файлами на удаленных веб-серверах. В качестве миссии рабочей группы по созданию DAV было заявлено: "разработка дополнений к протоколу HTTP, обеспечивающих свободное взаимодействие инструментов распределённой разработки веб-страниц, в соответствии с потребностями работы пользователей". Однако в процессе эксплуатации DAV нашёл себе ряд других применений, выходящих за первоначально принятые рамки коллективной работы над веб-документами. Сегодня DAV применяется в качестве сетевой файловой системы, эффективной для работы в Интернете и способной обрабатывать файлы целиком, поддерживая хорошую производительность работы в условиях окружения с высокой временной задержкой передачи информации. Кроме того, DAV широко применяется в качестве протокола для доступа через Интернет и манипулирования содержимым систем документооборота (document management system). Ещё одной важной целью DAV является поддержка работы распределённых команд по разработке программного обеспечения. В качестве резюме задачу создания DAV можно указать так: на волне повсеместного использования HTTP в качестве стандартного уровня доступа к широкому кругу хранилищ информации расширить его возможности средствами записи информации (HTTP — доступ на чтение, DAV — доступ на запись).

WebDAV
Уровень (по модели OSI) Прикладной
Порт/ID 80, 443
Спецификация RFC 2518, RFC 4918

Основные возможности

  • Блокировка — долгосрочные блокировки на запись документа предотвращают потерю информации при одновременном редактировании документа несколькими пользователями. Учитывая характер Интернет-соединений пользователей, длительность блокировки в DAV не зависит от индивидуального сетевого соединения.
  • Свойства — произвольные метаданные могут храниться в качестве свойств, описанных на языке XML. В качестве примера можно привести список авторов документа или его краткую аннотацию. Протокол DAV предоставляет средства для создания, редактирования и удаления свойств. Протокол DASL или DAV Searching and Locating предоставляет средства поиска и локализации веб-ресурсов на основе значения их свойств.
  • Именованные области (Namespace) — раздел DAV, поддерживающий переименование и перемещение веб-ресурсов. Механизм реализован в протоколе с помощью коллекций, выполняющих функцию, аналогичную папкам в файловой системе.

Особенности

  • Выполнение основных файловых операций над объектами на удаленном сервере;
  • Выполнение расширенных файловых операций (блокировки, поддержка версий);
  • Работа с любым типом объектов (не только файлы);
  • Работа с метаданными;
  • Поддержка одновременной работы над несколькими объектами.

Используется для совместной работы над удаленными файлами, являясь заменой для FTP и SMB.

Методы

WebDAV расширяет HTTP следующими методами запроса:

  • PROPFIND — получение свойств объекта на сервере в формате XML. Также можно получать структуру репозитория (дерево каталогов);
  • PROPPATCH — изменение свойств за одну транзакцию;
  • MKCOL — создать коллекцию объектов (каталог в случае доступа к файлам);
  • COPY — копирование из одного URI в другой;
  • MOVE — перемещение из одного URI в другой;
  • LOCK — поставить блокировку на объекте. WebDAV поддерживает эксклюзивные и общие (shared) блокировки;
  • UNLOCK — снять блокировку с ресурса.

Стандарты

Работа WebDAV регулируется следующими стандартами:

  • RFC 2291 «Requirements for a Distributed Authoring and Versioning Protocol for the World Wide Web»;
  • RFC 4918 «HTTP Extensions for Distributed Authoring — WEBDAV»;
  • RFC 3648 «Web Distributed Authoring and Versioning (WebDAV) Ordered Collections Protocol»;
  • RFC 3744 «Web Distributed Authoring and Versioning (WebDAV) Access Control Protocol».

Интересные факты

  • OS X от Apple использовала WebDAV для обеспечения службы iDisk.
  • Для подключения WebDAV-сервисов в Linux можно использовать утилиту davfs2.
  • Microsoft SharePoint использует WebDAV.
  • WebDAV встроен в Windows. Служба называется WebClient, а в IE — Web Folders. Каталоги можно подключать как обычные сетевые расположения.
  • OpenText Content Server предоставляет удаленный доступ к содержимому системы управления документами с помощью установки модуля Content Server WebDAV

WebDAV-серверы

WebDAV-клиенты

  • BitKinex — для Windows. Бесплатный. Поддерживает WebDAV: HTTP и HTTPS (SSL).
  • Cadaver — консольный клиент для GNU/Linux.
  • Cajaфайловый менеджер в MATE, форк Nautilus. Поддерживает SSL.
  • CarotDAV — для Windows. Поддерживает SSL. Свободный.
  • Cyberduck — для OS X и Windows. Поддерживает SSL. Свободный.
  • Dolphin — файловый менеджер в KDE. Поддерживает SSL.
  • ES File Explorer — файловый менеджер для Android.
  • Nautilus — файловый менеджер в GNOME. Поддерживает SSL.
  • NetDrive — для Windows. При подключении к серверу создает локальный диск. Имеет триал версию на 7 дней. Нестабильно работает с eGroupWare 1.8.001.
  • RaiDrive — для Windows. Подключение удалённых хранилищ в качестве сетевых дисков.
  • WinSCP — графический FTP/SFTP-клиент для Windows (поддержка в тестовом режиме).
  • WebDriveдля Windows и Mac. Клиент доступа файл, который сопоставляется FTP, SFTP и WebDAV, Облако серверов буквы диска или устройства.
  • плагин для Total Commander (WebDAV) — подключается через Total Commander. Бесплатный. Нестабильно работает с eGroupWare 1.8.001.
  • плагин для FAR Manager (NetBox) — подключается через FAR. Бесплатный. (с 28.02.2013 плагин входит в дистрибутив FAR 3, заменяя собой FarFTP).

Примечания

  1. Docs ModWebDAV - Lighttpd - lighty labs. redmine.lighttpd.net. Дата обращения: 11 января 2021.
  2. Mailfence. Documents - Онлайн-документация для Mailfence. Mailfence. Дата обращения: 11 января 2021.
  3. Module ngx_http_dav_module. nginx.org. Дата обращения: 11 января 2021.
  4. Accessing ownCloud Files Using WebDAV :: ownCloud Documentation. doc.owncloud.com. Дата обращения: 11 января 2021.
  5. Accessing Nextcloud files using WebDAV — Nextcloud latest User Manual latest documentation. docs.nextcloud.com. Дата обращения: 11 января 2021.
  6. Roman Arutyunyan. arut/nginx-dav-ext-module. — 2021-01-02.

Ссылки

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.