WebDAV

Расширение HTTP для совместного редактирования
WebDAV
Протокол связи
уровень OSIПриложение
Порт(ы)80, 443
Запрос(ы) предложений (RFC)RFC  2518, RFC  4918
Веб-сайтwww.webdav.org

WebDAV ( Web Distributed Authoring and Versioning ) — это набор расширений для протокола передачи гипертекста (HTTP), который позволяет агентам пользователей совместно создавать контент непосредственно на веб-сервере HTTP , предоставляя возможности для управления параллелизмом и операций с пространством имен , что позволяет рассматривать Web как среду для совместной работы, а не только как среду, доступную только для чтения. [1] WebDAV определен в RFC  4918 рабочей группой Internet Engineering Task Force (IETF). [2]

Протокол WebDAV предоставляет пользователям фреймворк для создания, изменения и перемещения документов на сервере . Наиболее важные функции включают в себя поддержку свойств об авторе или дате изменения, управление пространством имен , коллекции и защиту от перезаписи. Поддержка свойств включает в себя такие вещи, как создание, удаление и запрос информации о файлах. Управление пространством имен имеет дело с возможностью копирования и перемещения веб-страниц в пределах пространства имен сервера. Коллекции имеют дело с созданием, удалением и перечислением различных ресурсов. Наконец, защита от перезаписи обрабатывает аспекты, связанные с блокировкой файлов. Она использует преимущества существующих технологий, таких как Transport Layer Security , дайджест-аутентификация доступа или XML , чтобы удовлетворить эти требования. [3]

Многие [ какие? ] современные операционные системы предоставляют встроенную клиентскую поддержку WebDAV [ необходима ссылка ] .

История

WebDAV появился в 1996 году, когда Джим Уайтхед работал с Консорциумом Всемирной паутины (W3C) над проведением двух встреч для обсуждения проблемы распределенного авторинга во Всемирной паутине с заинтересованными людьми. [4] [5] Первоначальное видение Интернета Тимом Бернерсом-Ли включало среду как для чтения, так и для письма. Фактически, первый веб-браузер Бернерса-Ли , названный WorldWideWeb , мог как просматривать, так и редактировать веб-страницы ; но, по мере роста Интернета, он стал средой только для чтения для большинства пользователей. Уайтхед и другие единомышленники хотели преодолеть это ограничение. [6] [7]

Результатом встреч стало формирование рабочей группы IETF, поскольку новые усилия должны были привести к расширениям HTTP, стандартизацию которого IETF уже начала проводить.

Когда работа над протоколом началась, стало ясно, что обработка как распределенного авторинга, так и версионирования вместе потребует слишком много работы и что эти задачи придется разделить. Группа WebDAV сосредоточилась на распределенном авторинге и оставила версионирование на будущее. (Расширение Delta-V добавило версионирование позже – см. раздел Расширения ниже.)

Рабочая группа WebDAV завершила свою работу в марте 2007 года после того, как Руководящая группа по инжинирингу Интернета (IESG) приняла инкрементальное обновление RFC  2518. Другие расширения, оставшиеся незавершенными в то время, такие как метод BIND, были завершены их отдельными авторами, независимо от формальной рабочей группы. [8]

Выполнение

Совместная разработка WebDAV на совместимом HTTP-сервере

WebDAV расширяет набор стандартных HTTP-глаголов и заголовков, разрешенных для методов запроса . Добавленные глаголы включают:

ГлаголДействие
КОПИЯкопировать ресурс из одного унифицированного идентификатора ресурса (URI) в другой
ЗАМОКустановить блокировку на ресурс. WebDAV поддерживает как общие, так и исключительные блокировки.
МККОЛсоздавать коллекции (также известные как каталоги )
ДВИГАТЬСЯпереместить ресурс с одного URI на другой
ПРОПФИНДизвлечь свойства, хранящиеся в виде XML , из веб-ресурса . Он также перегружен , чтобы позволить извлечь структуру коллекции (также известную как иерархия каталогов) удаленной системы.
ПРОПАТЧизменение и удаление нескольких свойств ресурса за один атомарный акт
РАЗБЛОКИРОВАТЬснять блокировку с ресурса

Характеристики

Свойства протокола WebDAV — это пара имя–значение , в которой «имя» — это унифицированный идентификатор ресурса (URI), а «значения» выражаются через элементы XML. Кроме того, методы обработки свойств — PROPFIND и PROPPATCH . [9]

Документы, подготовленные рабочей группой

Рабочая группа WebDAV подготовила несколько работ:

  • документ с требованиями: «Требования к протоколу распределенной разработки и управления версиями для Всемирной паутины» RFC  2291, выпущенный в феврале 1998 г.
  • базовый протокольный документ (исключая управление версиями, несмотря на его название): «HTTP Extensions for Web Distributed Authoring and Versioning (WebDAV)» RFC  4918, выпущенный в июне 2007 г. (который обновляет и заменяет «HTTP Extensions for Distributed Authoring – WebDAV» RFC  2518, выпущенный в феврале 1999 г.)
  • протокол упорядоченных коллекций: «Протокол упорядоченных коллекций Web Distributed Authoring and Versioning (WebDAV)» RFC  3648, выпущенный в декабре 2003 г.
  • протокол контроля доступа: «Протокол контроля доступа к распределенной веб-разработке и управлению версиями (WebDAV)» RFC  3744, выпущенный в мае 2004 г.
  • спецификация квот: «Свойства квот и размеров для распределенных коллекций разработки и управления версиями (DAV)» RFC  4331, выпущенный в феврале 2006 г.
  • спецификация перенаправления: «Ресурсы перенаправления Web Distributed Authoring and Versioning (WebDAV)» RFC  4437, выпущенный в марте 2006 г.

Другие документы, опубликованные через IETF

  • протокол управления версиями: «Расширения управления версиями для WebDAV (Web Distributed Authoring and Versioning)» RFC  3253 (создан рабочей группой Delta-V)
  • спецификация типов данных свойств WebDAV: «Типы данных для свойств распределенной веб-разработки и управления версиями (WebDAV)» RFC  4316
  • документ, определяющий, как инициировать монтирование ресурса WebDAV: «Монтирование серверов Web Distributed Authoring and Versioning (WebDAV)» RFC  4709
  • протокол доступа к календарю: «Расширения календаря для WebDAV ( CalDAVRFC  4791
  • протокол запроса: «Поиск по распределенной веб-разработке и управлению версиями (WebDAV)» RFC  5323
  • расширение спецификации WebDAV ACL: «WebDAV Current Principal Extension» RFC  5397
  • расширение метода WebDAV MKCOL: «Расширенный MKCOL для распределенной веб-разработки и управления версиями (WebDAV)» RFC  5689
  • расширение модели коллекции, определяющее создание и обнаружение дополнительных привязок к ресурсу: «Расширения привязки к распределенной веб-разработке и управлению версиями (WebDAV)» RFC  5842
  • применение POST к коллекциям WebDAV: «Использование POST для добавления участников в коллекции Web Distributed Authoring and Versioning (WebDAV)» RFC  5995
  • расширение, позволяющее эффективно синхронизировать большие коллекции: «Синхронизация коллекций для распределенной веб-разработки и управления версиями (WebDAV)» RFC  6578

Расширения и производные

Для управления версиями протокол Delta-V рабочей группы Web Versioning and Configuration Management добавляет отслеживание версий ресурсов, опубликованное в RFC  3253.

Для поиска и определения местоположения рабочая группа DAV Searching and Locating (DASL) так и не разработала официального стандарта, хотя существует ряд реализаций ее последнего проекта. Работа продолжалась как деятельность вне рабочей группы. [10] Спецификация WebDAV Search пытается продолжить работу рабочей группы и была опубликована как RFC  5323 в ноябре 2008 года. [11]

Для календаря CalDAV — это протокол, позволяющий получать доступ к календарю через WebDAV. CalDAV моделирует события календаря как HTTP-ресурсы в формате iCalendar и моделирует календари, содержащие события, как коллекции WebDAV.

Для группового программного обеспечения GroupDAV представляет собой вариант WebDAV, который позволяет клиент-серверным системам группового программного обеспечения хранить и извлекать объекты, такие как элементы календаря и записи адресной книги, вместо веб-страниц.

Для взаимодействия с MS Exchange WebDAV может использоваться для чтения/обновления/удаления элементов в почтовом ящике или общедоступной папке. WebDAV для Exchange был расширен Microsoft для работы с данными сообщений. Версии Exchange Server 2000, 2003 и 2007 поддерживают WebDAV. Однако поддержка WebDAV была прекращена в Exchange 2010 [12] в пользу Exchange Web Services (EWS), API на основе SOAP / XML .

Дополнительные расширения, специфичные для Windows

В рамках набора документации Windows Server Protocols (WSPP) [13] компания Microsoft опубликовала следующие документы протоколов, подробно описывающие расширения WebDAV:

  • [MS-WDVME]: Протокол Web Distributed Authoring and Versioning (WebDAV): Расширения Microsoft. [14] Эти расширения включают новый глагол и новые заголовки, а также свойства, которые позволяют ранее неуправляемые типы файлов и оптимизируют взаимодействие протоколов для клиентов файловой системы. Эти расширения вводят новые функциональные возможности в WebDAV, оптимизируют обработку и устраняют необходимость в обработке особых случаев.
  • [MS-WDV]: Протокол Web Distributed Authoring and Versioning (WebDAV): Клиентские расширения. [15] Клиентские расширения в этой спецификации расширяют протокол WebDAV, вводя новые заголовки, которые позволяют использовать типы файлов, которые в настоящее время не управляются, и оптимизируют взаимодействие протоколов для клиентов файловой системы. Эти расширения не вводят новые функциональные возможности в протокол WebDAV, но вместо этого оптимизируют обработку и устраняют необходимость в обработке особых случаев.
  • [MS-WDVSE]: Протокол Web Distributed Authoring and Versioning (WebDAV): Расширения сервера. [16] Расширения сервера в этой спецификации расширяют WebDAV, вводя новые заголовки HTTP-запросов и ответов, которые позволяют использовать типы файлов, которые в настоящее время не управляются, и оптимизируют взаимодействие протоколов для клиентов файловой системы. Эта спецификация также вводит новый метод WebDAV, который используется для отправки поисковых запросов разрозненным поставщикам поиска.
  • [MS-WEBDAVE]: Спецификация протокола расширений ошибок веб-распределенной разработки и управления версиями. [17] Этот протокол SharePoint Front-End описывает расширенные коды ошибок и расширенный механизм обработки ошибок, указанные в [MS-WDV], чтобы позволить совместимым серверам сообщать подробности состояния ошибки в ответе сервера.

WebDAV-клиенты

КлиентСоздательПоддержка операционной системыЛицензияИнтерфейс
КибердакДэвид В. КочерWindows, macOSGPLграфический интерфейс
davfs2Команда GNOMEПРЕДОХРАНИТЕЛЬGPLВФС
дэвиксЦЕРНWindows, Linux, MacOSLGPLCLI
EasySyncСэмюэль ЧЕМЛАандроидМассачусетский технологический институтуслуга
GVfsКоманда GNOMEГНОМGPLВФС
КИОКоманда KDEКДЕGPLВФС
КонкуэрорКоманда KDEКДЕGPLграфический интерфейс
Файлы GNOMEКоманда GNOMEГНОМGPLграфический интерфейс
SmartFTPООО «СмартСофт»ОкнаЗапатентованныйграфический интерфейс
ВебДрайвТехнологии Южной рекиWindows, MacOS , iOS, AndroidЗапатентованныйВФС
WinSCPМартин ПржикрылОкнаGPLCLI и графический интерфейс
WebClient (устаревший) [18]МайкрософтОкнаТо же, что и Windowsуслуга

Библиотеки WebDAV

БиблиотекиСоздательОперационная система или платформаЛицензияЯзык
Апачский ВинкApache Software FoundationJVMЯва
Apache-томкатApache Software FoundationJVMЯва
Апачский заяцApache Software FoundationJVMАЧСЯва
сабля/давфруктWindows, Linux, MacOSНовый BSDPHP

Альтернативы WebDAV

  • Протокол передачи файлов (FTP), простой и широко используемый сетевой протокол на основе IP , позволяет пользователям передавать файлы между сетевыми хостами. FTPS расширяет FTP для безопасного трафика.
  • Протокол передачи файлов SSH (SFTP), расширение протокола Secure Shell (SSH) версии 2.0, обеспечивает возможность безопасной передачи файлов; и scp, форма SFTP, которая запускается как одна команда, аналогичная обычной команде cp (копировать) в оболочке.
  • Rsync — протокол и команда, похожая на scp, которая также может пропускать перезапись идентичных файлов и частей файлов или пропускать более новые файлы и т. д.
  • Распределенная файловая система, такая как протокол Server Message Block (SMB), позволяет клиентам Microsoft Windows и Samba с открытым исходным кодом получать доступ и управлять файлами и папками удаленно на подходящем файловом сервере . Обычно используется для потоковой передачи мультимедиа через Ethernet и широко поддерживается Smart TV . [19]
  • AtomPub , протокол на основе HTTP для создания и обновления веб-ресурсов, может использоваться для некоторых вариантов использования WebDAV. Он основан на стандартных HTTP-глаголах со стандартизированными ресурсами коллекции, которые ведут себя примерно как модель каталогов WebDAV.
  • CMIS — стандарт, состоящий из набора веб-сервисов для обмена информацией между разрозненными репозиториями контента, призванный обеспечить взаимодействие людей и приложений, использующих несколько репозиториев контента; он имеет интерфейсы на основе SOAP и AtomPub.
  • Программное обеспечение Wiki , такое как MediaWiki .
  • Платформа связанных данных (LDP) — спецификация связанных данных, определяющая набор шаблонов интеграции для создания HTTP-сервисов RESTful, которые способны выполнять чтение и запись данных RDF.
  • Объектное хранилище , такое как OpenStack Swift или Amazon S3

Смотрите также

Ссылки

  1. ^ Уайтхед и Голанд 1999, стр. 293.
  2. Уайтхед 1998, стр. 34.
  3. ^ Уайтхед и Голанд 1999, стр. 294.
  4. ^ «Предлагаемая повестка дня встречи в Сан-Матео». 1996.
  5. ^ "Краткое изложение мтг.". 1996.
  6. ^ "Re: Обновленная повестка дня".
  7. Уайтхед 1998, стр. 40.
  8. ^ Уайтхед 1998, стр. 39-40.
  9. ^ Уайтхед и Голанд 1999, стр. 299.
  10. ^ DASL Архивировано 2004-06-03 на Wayback Machine
  11. ^ ПОИСК WebDav
  12. ^ Прекращенные функции: Справка по Exchange 2010 SP1 Microsoft TechNet
  13. ^ «WSPP – Документация по протоколам Windows Server». 2011.
  14. ^ «MS-WDVME – Протокол веб-распределенной разработки и управления версиями (WebDAV): расширения Microsoft». 2014.
  15. ^ «MS-WDV – Протокол распределенной веб-разработки и управления версиями (WebDAV): клиентские расширения». 2011.
  16. ^ «MS-WDVSE – Протокол распределенной веб-разработки и управления версиями (WebDAV): серверные расширения». 2011.
  17. ^ «MS-WEBDAVE – Спецификация протокола расширений ошибок веб-распределенной разработки и управления версиями». 2011.
  18. ^ "Устаревшие функции для клиента Windows". Что нового в Windows . Microsoft . Получено 4 ноября 2023 г. – через Microsoft Learn.
  19. Рау, Томас (19 октября 2017 г.). "Filme, Musik & Bilder im Heimnetzwerk Streamen". ПК-ВЕЛЬТ (на немецком языке) . Проверено 5 ноября 2020 г.
  • Уайтхед, Э. Джеймс; Голанд, Ярон И. (1999). "WebDAV". Ecscw' 99. Нидерланды: Springer Science+Business Media . стр. 291–310. doi :10.1007/978-94-011-4441-4_16. ISBN 978-94-011-4441-4.
  • Уайтхед, Э. Дж. (1998). «WebDAV: стандарт IEFT для совместной разработки в Интернете». IEEE Internet Computing . 2 (5): 34–40. doi : 10.1109/4236.722228. ISSN  1941-0131 . Получено 12 октября 2021 г.
  • Официальный сайт WebDAV
  • Потрясающий WebDAV Тщательно подобранный список потрясающих приложений, поддерживающих WebDAV, и инструментов, связанных с ним.
  • Проект Davfs2
  • Проект Fusedav
  • Модули Apache WebDAV

Взято с "https://en.wikipedia.org/w/index.php?title=WebDAV&oldid=1240713750"