WebDAV


Из Википедии, бесплатной энциклопедии
  (Перенаправлено с Webdav )
Перейти к навигации Перейти к поиску

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

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

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

История

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

В рамках набора документации по протоколам 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
  • ЛЕД
  • Переносимость данных

использованная литература

  1. ^ Уайтхед & Goland 1999 , стр. 293.
  2. ^ Уайтхед & Goland 1999 , стр. 294.
  3. ^ «Предлагаемая повестка дня для встречи в Сан-Матео» . 1996 г.
  4. ^ "Краткое содержание" . 1996 г.
  5. ^ "Re: Обновленная повестка дня" .
  6. ^ Уайтхед & Goland 1999 , стр. 299.
  7. ^ 28 июля 2017 г. "http.webdav - Caddy User Guide" . Проверено 13 июля 2018 .
  8. ^ "lighttpd mod webdav" .
  9. ^ "Реализация Mailfence WebDAV" . Дата обращения 5 мая 2020 .
  10. ^ "Руководство пользователя Nextcloud 18" . nextcloud.com . Проверено 22 февраля 2020 года .
  11. ^ "Модуль ngx_http_dav_module" . сайт nginx . Проверено 15 июля +2016 .
  12. ^ "Модуль nginx-dav-ext-module" . github.com . Дата обращения 2 августа 2016 .
  13. ^ «Документация ownCloud» . owncloud.com . Проверено 23 июля 2018 года .
  14. ^ "Руководство сообщества Seafile" . Проверено 14 сентября 2021 года .
  15. ^ «Расширение WebDAV для IIS» . IIS.net . Проверено 22 августа 2021 года .
  16. ^ DASL архивации 2004-06-03 в Wayback Machine
  17. ^ WebDav ПОИСК
  18. ^ Снятые с производства функции: Exchange 2010 с пакетом обновления 1 (SP1) Справка Microsoft TechNet
  19. ^ «WSPP - документация по протоколам Windows Server» . 2011 г.
  20. ^ "MS-WDVME - Протокол Web Distributed Authoring and Versioning (WebDAV): Microsoft Extensions" . 2014 г.
  21. ^ «MS-WDV - Протокол веб-распределенной разработки и управления версиями (WebDAV): клиентские расширения» . 2011 г.
  22. ^ "MS-WDVSE - Протокол Web Distributed Authoring and Versioning (WebDAV): Server Extensions" . 2011 г.
  23. ^ "MS-WEBDAVE - Спецификация протокола расширений ошибок веб-распределенного авторинга и управления версиями" . 2011 г.
  24. Рау, Томас (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

Источник « https://en.wikipedia.org/w/index.php?title=WebDAV&oldid=1049581744 »