Протокол WebDAV предоставляет пользователям платформу для создания, изменения и перемещения документов на сервере . Наиболее важные функции включают поддержание свойств об авторе или дате модификации, управление пространством имен , коллекции и защиту от перезаписи. Обслуживание свойств включает в себя такие вещи, как создание, удаление и запрос информации о файлах. Управление пространством имен имеет дело с возможностью копировать и перемещать веб-страницы в пространстве имен сервера. Коллекции связаны с созданием, удалением и перечислением различных ресурсов. Наконец, защита от перезаписи обрабатывает аспекты, связанные с блокировкой файлов. Он использует преимущества существующих технологий, таких как безопасность транспортного уровня , дайджест-аутентификация доступа илиXML для удовлетворения этих требований. [2]
WebDAV началось в 1996 году , когда Джим Уайтхед , PhD выпускник Калифорнийского университета в Ирвине , работал с World Wide Web Consortium (W3C) на хост две встречи , чтобы обсудить проблему распределенного авторинга на World Wide Web с заинтересованными людьми. [3] [4] Первоначальное видение Интернета Тимом Бернерсом-Ли включало среду как для чтения, так и для письма. Фактически, первый веб-браузер Бернерса-Ли под названием WorldWideWeb мог как просматривать, так и редактировать веб-страницы.; но по мере роста Интернета для большинства пользователей он стал доступным только для чтения. Уайтхед и другие единомышленники хотели преодолеть это ограничение. [5]
Встречи привели к формированию рабочей группы IETF, поскольку новые усилия приведут к расширению HTTP, которое IETF начала стандартизировать.
Когда началась работа над протоколом, стало ясно, что совместная обработка как распределенного авторинга, так и управления версиями потребует слишком много работы и что задачи придется разделить. Группа WebDAV сосредоточилась на распределенном авторинге и оставила управление версиями на будущее. (Расширение Delta-V добавило управление версиями позже - см. Раздел «Расширения» ниже.)
Рабочая группа WebDAV завершила свою работу в марте 2007 г., после того, как Руководящая группа инженеров Интернета (IESG) приняла инкрементное обновление RFC 2518 . Другие расширения, оставшиеся незаконченными в то время, такие как метод BIND , были завершены их отдельными авторами, независимо от формальной рабочей группы.
Реализация
WebDAV расширяет набор стандартных HTTP-команд и заголовков, разрешенных для методов запроса . К добавленным глаголам относятся:
КОПИРОВАТЬ : копировать ресурс из одного универсального идентификатора ресурса (URI) в другой.
БЛОКИРОВКА : установить блокировку ресурса. WebDAV поддерживает как общие, так и эксклюзивные блокировки.
MKCOL : создавать коллекции (также известные как каталог )
MOVE : переместить ресурс из одного URI в другой
PROPFIND : получить свойства, хранящиеся в формате XML , из веб-ресурса . Он также перегружен, чтобы можно было получить структуру коллекции (также известную как иерархия каталогов) удаленной системы.
PROPPATCH : изменение и удаление нескольких свойств ресурса за один атомарный акт
РАЗБЛОКИРОВАТЬ : снять блокировку с ресурса
Характеристики
Свойства протокола WebDAV представляют собой пару «имя – значение» , в которой «имя» является унифицированным идентификатором ресурса (URI), а «значения» выражаются через элементы XML. Furthremore на методы для обработки свойства являются PROPFIND и PROPPATCH . [6]
Поддержка сервера
HTTP-сервер Apache предоставляет модули WebDAV, основанные как на davfs, так и на Apache Subversion (svn) .
Caddy имеет дополнительный модуль WebDAV [7]
lighttpd имеет дополнительный модуль WebDAV [8]
Mailfence предлагает поддержку WebDAV через виртуальный диск + вы можете подключать внешние диски к Mailfence Documents [9]
Nextcloud - это ответвление ownCloud, поэтому он также предлагает полную поддержку WebDAV [10]
Nginx имеет очень ограниченный дополнительный модуль WebDAV [11] и сторонний модуль [12].
ownCloud - это PHP-приложение для облачного хранилища, которое предлагает полную поддержку WebDAV [13]
SabreDAV - это приложение PHP, которое можно использовать на Apache или Nginx вместо связанных с ними модулей.
Seafile имеет дополнительную конфигурацию WebDAV [14]
Microsoft IISимел модуль WebDAV, но его поддержка была прекращена в июле 2021 г. [15]
Служба поддержки клиентов
Git поддерживает запись на пульты HTTP, хотя «умный» протокол Git для HTTP (требующий специальной поддержки сервера) предпочтительнее WebDAV.
Linux через GVfs , включая файлы GNOME, и через KIO , включая Konqueror и Dolphin
macOS , включая встроенную поддержку CalDAV и CardDAV , дизайн которых основан на WebDAV
Microsoft Windows , включая встроенную поддержку в проводнике
Microsoft Office
Документы, подготовленные рабочей группой
Рабочая группа 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 г.
спецификация перенаправления: «Справочные ресурсы для перенаправления распределенного веб-авторинга и управления версиями (WebDAV)» RFC 4437 , выпущенный в марте 2006 г.
Другие документы, опубликованные через IETF
протокол управления версиями: «Расширения управления версиями для WebDAV (Распределенная веб-разработка и управление версиями)» 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» RFC 5397
расширение метода MKCOL WebDAV: «Расширенный 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) никогда не создавала никаких официальных стандартов, хотя существует ряд реализаций ее последнего проекта. Работа продолжалась как нерабочая деятельность. [16] Спецификация поиска WebDAV пытается продолжить работу с того места, на котором остановилась рабочая группа, и была опубликована как RFC 5323 в ноябре 2008 года. [17]
Для ведения календаря CalDAV - это протокол, обеспечивающий доступ к календарю через WebDAV. CalDAV моделирует события календаря как ресурсы HTTP в формате iCalendar и моделирует календари, содержащие события, как коллекции WebDAV.
Для групповой работы GroupDAV - это вариант WebDAV, который позволяет системам групповой работы клиент / сервер хранить и извлекать объекты, такие как элементы календаря и записи адресной книги, вместо веб-страниц.
Для взаимодействия с MS Exchange WebDAV можно использовать для чтения / обновления / удаления элементов в почтовом ящике или общей папке. Microsoft расширила WebDAV для Exchange для работы с данными обмена сообщениями. Exchange Server версий 2000, 2003 и 2007 поддерживает WebDAV. Однако поддержка WebDAV была прекращена в Exchange 2010 [18] в пользу веб-служб Exchange (EWS), API на основе SOAP / XML .
Дополнительные расширения для Windows
См. Также: Обещание открытой спецификации Microsoft
В рамках набора документации по протоколам Windows Server (WSPP) [19] Microsoft опубликовала следующие документы протокола с подробным описанием расширений для WebDAV:
[MS-WDVME]: Протокол Web Distributed Authoring and Versioning (WebDAV): Microsoft Extensions. [20] Эти расширения включают новую команду, новые заголовки и свойства, которые позволяют использовать ранее неуправляемые типы файлов и оптимизируют взаимодействие протоколов для клиентов файловой системы. Эти расширения вводят новые функции в WebDAV, оптимизируют обработку и устраняют необходимость в обработке в особых случаях.
[MS-WDV]: Протокол веб-распределенной разработки и управления версиями (WebDAV): клиентские расширения. [21] Клиентские расширения в этой спецификации расширяют протокол WebDAV, вводя новые заголовки, которые позволяют использовать типы файлов, которые в настоящее время не поддаются управлению, и оптимизируют взаимодействие протоколов для клиентов файловой системы. Эти расширения не вводят новые функции в протокол WebDAV, а вместо этого оптимизируют обработку и устраняют необходимость в обработке в особых случаях.
[MS-WDVSE]: Протокол веб-распределенной разработки и управления версиями (WebDAV): серверные расширения. [22] Серверные расширения в этой спецификации расширяют WebDAV, вводя новые заголовки HTTP-запроса и ответа, которые позволяют использовать типы файлов, которые в настоящее время не поддаются управлению, и оптимизируют взаимодействие протоколов для клиентов файловой системы. Эта спецификация также представляет новый метод WebDAV, который используется для отправки поисковых запросов разрозненным поисковым провайдерам.
[MS-WEBDAVE]: Спецификация протокола расширений ошибок веб-распределенного авторинга и управления версиями. [23] В этом протоколе переднего плана SharePoint описаны расширенные коды ошибок и расширенный механизм обработки ошибок, указанный в [MS-WDV], чтобы соответствующие серверы могли сообщать подробные сведения о состоянии ошибки в ответе сервера.
Альтернативы WebDAV
Протокол передачи файлов (FTP), простой и широко адаптированный сетевой протокол, основанный на IP , позволяет пользователям передавать файлы между сетевыми узлами. FTPS расширяет FTP для безопасного трафика.
Протокол передачи файлов SSH (SFTP), расширение протокола Secure Shell (SSH) версии 2.0, обеспечивает возможность безопасной передачи файлов; и scp, форма SFTP, которая выполняется как одна команда, аналогичная обычной команде cp (copy) в оболочке.
Rsync , протокол и команда, аналогичные scp, которые также могут пропускать перезапись идентичных файлов и частей файлов или пропускать новые файлы и т. Д.
Распределенной файловой системы , такие как сервер Блок сообщений протокола SMB () позволяет Microsoft Windows и с открытым исходным кодом Samba клиентов для доступа и управления файлами и папками на удаленном подходящем файловом сервере . Обычно используется для потоковой передачи мультимедиа по сети Ethernet и широко поддерживается телевизорами Smart TV . [24]
AtomPub , протокол на основе HTTP для создания и обновления веб-ресурсов, может использоваться в некоторых случаях использования WebDAV. Он основан на стандартных HTTP-командах со стандартизованными ресурсами коллекции, которые ведут себя как модель каталогов WebDAV.
CMIS , стандарт, состоящий из набора веб-сервисов для обмена информацией между разрозненными репозиториями контента, стремится обеспечить совместимость для людей и приложений, использующих несколько репозиториев контента; он имеет интерфейсы на основе SOAP и AtomPub
Программное обеспечение Wiki , такое как MediaWiki .
Платформа связанных данных (LDP), спецификация связанных данных, определяющая набор шаблонов интеграции для создания RESTful HTTP-сервисов, способных выполнять чтение и запись данных RDF.
Объектное хранилище, такое как OpenStack Swift или Amazon S3
Смотрите также
CalDAV
CardDAV
GroupDAV
Управление содержанием
Сравнение программного обеспечения WebDAV
Распределенная файловая система
Регистрация OSID
ЛЕД
Переносимость данных
использованная литература
^ Уайтхед & Goland 1999 , стр. 293.
^ Уайтхед & Goland 1999 , стр. 294.
^ «Предлагаемая повестка дня для встречи в Сан-Матео» . 1996 г.
^ "Краткое содержание" . 1996 г.
^ "Re: Обновленная повестка дня" .
^ Уайтхед & Goland 1999 , стр. 299.
^ 28 июля 2017 г. "http.webdav - Caddy User Guide" . Проверено 13 июля 2018 .
^ "lighttpd mod webdav" .
^ "Реализация Mailfence WebDAV" . Дата обращения 5 мая 2020 .
^ "Руководство пользователя Nextcloud 18" . nextcloud.com . Проверено 22 февраля 2020 года .
^ "Модуль nginx-dav-ext-module" . github.com . Дата обращения 2 августа 2016 .
^ «Документация ownCloud» . owncloud.com . Проверено 23 июля 2018 года .
^ "Руководство сообщества Seafile" . Проверено 14 сентября 2021 года .
^ «Расширение WebDAV для IIS» . IIS.net . Проверено 22 августа 2021 года .
^ DASL архивации 2004-06-03 в Wayback Machine
^ WebDav ПОИСК
^ Снятые с производства функции: Exchange 2010 с пакетом обновления 1 (SP1) Справка Microsoft TechNet
^ «WSPP - документация по протоколам Windows Server» . 2011 г.
^ "MS-WDVME - Протокол Web Distributed Authoring and Versioning (WebDAV): Microsoft Extensions" . 2014 г.
^ «MS-WDV - Протокол веб-распределенной разработки и управления версиями (WebDAV): клиентские расширения» . 2011 г.
^ "MS-WDVSE - Протокол Web Distributed Authoring and Versioning (WebDAV): Server Extensions" . 2011 г.
^ "MS-WEBDAVE - Спецификация протокола расширений ошибок веб-распределенного авторинга и управления версиями" . 2011 г.
↑ Рау, Томас (19 октября 2017 г.). "Фильмы, музыка и фильмы в Heimnetzwerk streamen" . PC-WELT (на немецком языке) . Дата обращения 5 ноября 2020 .
Уайтхед, Э. Джеймс; Голанд, Ярон Ю. (1999). WebDAV: сетевой протокол для удаленного совместного редактирования в Интернете . Neatherlands: Springer Science + Business Media . DOI : 10.1007 / 978-94-011-4441-4_16 . ISBN 978-94-011-4441-4.
внешние ссылки
Ресурсы WebDAV
Проект Davfs2
Проект Фуседав
Модули WebDAV Apache
Авторитетный контроль
Общий
Интегрированный авторитетный файл (Германия)
Национальные библиотеки
Соединенные Штаты
Другой
Microsoft Academic
Категории :
Интернет-протоколы
Стандарты консорциума World Wide Web
Рабочие группы
Протокол передачи гипертекста
Совместное программное обеспечение
Сетевые файловые системы
Скрытые категории:
Обратные ссылки шаблона веб-архива
CS1 Источники на немецком языке (de)
Статьи с кратким описанием
Краткое описание соответствует Викиданным
Статьи с отсутствующими достоверными ссылками за сентябрь 2020 г.