Протокол WebDAV предоставляет пользователям фреймворк для создания, изменения и перемещения документов на сервере . Наиболее важные функции включают в себя поддержку свойств об авторе или дате изменения, управление пространством имен , коллекции и защиту от перезаписи. Поддержка свойств включает в себя такие вещи, как создание, удаление и запрос информации о файлах. Управление пространством имен имеет дело с возможностью копирования и перемещения веб-страниц в пределах пространства имен сервера. Коллекции имеют дело с созданием, удалением и перечислением различных ресурсов. Наконец, защита от перезаписи обрабатывает аспекты, связанные с блокировкой файлов. Она использует преимущества существующих технологий, таких как Transport Layer Security , дайджест-аутентификация доступа или XML , чтобы удовлетворить эти требования. [3]
WebDAV появился в 1996 году, когда Джим Уайтхед работал с Консорциумом Всемирной паутины (W3C) над проведением двух встреч для обсуждения проблемы распределенного авторинга во Всемирной паутине с заинтересованными людьми. [4] [5] Первоначальное видение Интернета Тимом Бернерсом-Ли включало среду как для чтения, так и для письма. Фактически, первый веб-браузер Бернерса-Ли , названный WorldWideWeb , мог как просматривать, так и редактировать веб-страницы ; но, по мере роста Интернета, он стал средой только для чтения для большинства пользователей. Уайтхед и другие единомышленники хотели преодолеть это ограничение. [6] [7]
Результатом встреч стало формирование рабочей группы IETF, поскольку новые усилия должны были привести к расширениям HTTP, стандартизацию которого IETF уже начала проводить.
Когда работа над протоколом началась, стало ясно, что обработка как распределенного авторинга, так и версионирования вместе потребует слишком много работы и что эти задачи придется разделить. Группа WebDAV сосредоточилась на распределенном авторинге и оставила версионирование на будущее. (Расширение Delta-V добавило версионирование позже – см. раздел Расширения ниже.)
Рабочая группа WebDAV завершила свою работу в марте 2007 года после того, как Руководящая группа по инжинирингу Интернета (IESG) приняла инкрементальное обновление RFC 2518. Другие расширения, оставшиеся незавершенными в то время, такие как метод BIND, были завершены их отдельными авторами, независимо от формальной рабочей группы. [8]
Выполнение
WebDAV расширяет набор стандартных HTTP-глаголов и заголовков, разрешенных для методов запроса . Добавленные глаголы включают:
Рабочая группа 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 ( CalDAV )» RFC 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-клиенты
Библиотеки WebDAV
Альтернативы WebDAV
Протокол передачи файлов (FTP), простой и широко используемый сетевой протокол на основе IP , позволяет пользователям передавать файлы между сетевыми хостами. FTPS расширяет FTP для безопасного трафика.
Протокол передачи файлов SSH (SFTP), расширение протокола Secure Shell (SSH) версии 2.0, обеспечивает возможность безопасной передачи файлов; и scp, форма SFTP, которая запускается как одна команда, аналогичная обычной команде cp (копировать) в оболочке.
Rsync — протокол и команда, похожая на scp, которая также может пропускать перезапись идентичных файлов и частей файлов или пропускать более новые файлы и т. д.
AtomPub , протокол на основе HTTP для создания и обновления веб-ресурсов, может использоваться для некоторых вариантов использования WebDAV. Он основан на стандартных HTTP-глаголах со стандартизированными ресурсами коллекции, которые ведут себя примерно как модель каталогов WebDAV.
CMIS — стандарт, состоящий из набора веб-сервисов для обмена информацией между разрозненными репозиториями контента, призванный обеспечить взаимодействие людей и приложений, использующих несколько репозиториев контента; он имеет интерфейсы на основе SOAP и AtomPub.
Платформа связанных данных (LDP) — спецификация связанных данных, определяющая набор шаблонов интеграции для создания HTTP-сервисов RESTful, которые способны выполнять чтение и запись данных RDF.
Уайтхед, Э. Дж. (1998). «WebDAV: стандарт IEFT для совместной разработки в Интернете». IEEE Internet Computing . 2 (5): 34–40. doi : 10.1109/4236.722228. ISSN 1941-0131 . Получено 12 октября 2021 г.
Внешние ссылки
Официальный сайт WebDAV
Потрясающий WebDAV Тщательно подобранный список потрясающих приложений, поддерживающих WebDAV, и инструментов, связанных с ним.