ВебДАВ
Протокол связи | |
Уровень OSI | Приложение |
---|---|
Порт(ы) | 80, 443 |
RFC(ы) | РФК 2518 , RFC 4918 |
Веб-сайт | www |
WebDAV ( Web Distributed Authoring and Versioning ) — это набор расширений протокола передачи гипертекста (HTTP), который позволяет пользовательским агентам совместно создавать контент непосредственно на веб-сервере HTTP , предоставляя средства для управления параллельным доступом и операций с пространством имен , что Web позволяет рассматриваться как средство записи и совместной работы, а не просто средство, доступное только для чтения. [1] WebDAV определен в RFC 4918 , разработанный рабочей группой ( Инженерной группы Интернета IETF). [2]
Протокол WebDAV предоставляет пользователям возможность создавать, изменять и перемещать документы на сервере . Наиболее важные функции включают сохранение свойств об авторе или дате изменения, управление пространством имен , коллекциями и защиту от перезаписи. Обслуживание свойств включает в себя такие вещи, как создание, удаление и запрос информации о файле. Управление пространством имен связано с возможностью копирования и перемещения веб-страниц в пространстве имен сервера. Коллекции занимаются созданием, удалением и перечислением различных ресурсов. Наконец, защита от перезаписи решает аспекты, связанные с блокировкой файлов. он использует преимущества существующих технологий, таких как безопасность транспортного уровня , дайджест-аутентификация доступа или XML . Для удовлетворения этих требований [3]
Многие современные операционные системы предоставляют встроенную на стороне клиента поддержку WebDAV .
История
[ редактировать ]WebDAV зародился в 1996 году, когда Джим Уайтхед работал с Консорциумом Всемирной паутины (W3C) над проведением двух встреч для обсуждения проблемы распределенного авторинга во Всемирной паутине с заинтересованными людьми. [4] [5] Тимом Бернерсом-Ли Первоначальное видение Интернета предполагало среду как для чтения, так и для записи. Фактически, первый веб-браузер Бернерса-Ли , названный WorldWideWeb , мог как просматривать, так и редактировать веб-страницы ; но по мере роста Интернета для большинства пользователей он стал средой, доступной только для чтения. Уайтхед и другие единомышленники хотели преодолеть это ограничение. [6] [7]
В результате встреч была создана рабочая группа IETF, поскольку новые усилия должны были привести к расширению HTTP, который IETF начал стандартизировать.
Когда началась работа над протоколом, стало ясно, что совместная обработка распределенной разработки и управления версиями потребует слишком много работы и что задачи придется разделить. Группа WebDAV сосредоточилась на распределенной разработке и оставила управление версиями на будущее. ( В расширении Delta-V управление версиями было добавлено позже — см. раздел «Расширения» ниже.)
WebDAV Рабочая группа завершила свою работу в марте 2007 года, после того как Руководящая группа по разработке Интернета (IESG) приняла постепенное обновление РФК 2518 . Другие расширения, оставшиеся на тот момент незавершенными, такие как метод BIND , были завершены их отдельными авторами, независимо от формальной рабочей группы. [8]
Выполнение
[ редактировать ]WebDAV расширяет набор стандартных команд HTTP и заголовков, разрешенных для методов запроса . К добавленным глаголам относятся:
Глагол | Действие |
---|---|
КОПИРОВАТЬ | скопировать ресурс из одного универсального идентификатора ресурса (URI) в другой |
ЗАМОК | заблокировать . ресурс WebDAV поддерживает как общие, так и монопольные блокировки. |
МККОЛ | создавать коллекции (также известные как каталог ) |
ДВИГАТЬСЯ | переместить ресурс из одного URI в другой |
ПРОПФИНД | извлекать свойства, хранящиеся в формате XML , из веб-ресурса . Он также перегружен , чтобы можно было получить структуру коллекции (также известную как иерархия каталогов) удаленной системы. |
ПРОППАТЧ | изменять и удалять несколько свойств ресурса за одно атомарное действие |
РАЗБЛОКИРОВАТЬ | снять блокировку с ресурса |
Характеристики
[ редактировать ]Свойства протокола WebDAV — это пара имя-значение , в которой «имя» представляет собой универсальный идентификатор ресурса (URI), а «значения» выражаются через элементы XML. Кроме того, методы обработки свойств — PROPFIND и PROPPATCH . [9]
Документы, подготовленные рабочей группой
[ редактировать ]Рабочая группа WebDAV подготовила несколько работ:
- документ с требованиями: «Требования к протоколу распределенной разработки и управления версиями для Всемирной паутины». RFC 2291 , выпущен в феврале 1998 г.
- документ базового протокола (за исключением управления версиями, несмотря на его название): «HTTP-расширения для распределенной веб-авторизации и управления версиями (WebDAV)» RFC 4918 , выпущенный в июне 2007 г. (который обновляет и заменяет «HTTP-расширения для распределенной разработки — WebDAV»). RFC 2518 , выпущен в феврале 1999 г.)
- протокол упорядоченных коллекций: «Протокол упорядоченных коллекций веб-распределенной разработки и управления версиями (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: «Монтирование серверов веб-распределенной разработки и контроля версий (WebDAV)» RFC 4709
- протокол доступа к календарю: «Расширения календаря для WebDAV ( CalDAV )» RFC 4791
- протокол запроса: «ПОИСК распределенной веб-авторизации и управления версиями (WebDAV)» RFC 5323
- расширение спецификации WebDAV ACL: «Текущее основное расширение WebDAV». RFC 5397
- расширение метода WebDAV MKCOL: «Расширенный MKCOL для распределенной веб-авторизации и управления версиями (WebDAV)». RFC 5689
- расширение модели коллекции, определяющее создание и обнаружение дополнительных привязок к ресурсу: «Расширения привязки к распределенной веб-авторизации и управлению версиями (WebDAV)». RFC 5842
- применение POST к коллекциям WebDAV: «Использование POST для добавления членов в коллекции распределенной веб-авторизации и управления версиями (WebDAV)» РФК 5995
- расширение, позволяющее эффективно синхронизировать большие коллекции: «Синхронизация коллекций для распределенной веб-авторизации и управления версиями (WebDAV)». RFC 6578
Расширения и производные
[ редактировать ]Для управления версиями протокол Delta-V рабочей группы по управлению веб-версиями и конфигурацией добавляет отслеживание версий ресурсов, опубликованное в РФК 3253 .
Для поиска и определения местоположения рабочая группа DAV Searching and Locating (DASL) так и не разработала никакого официального стандарта, хотя существует ряд реализаций его последнего проекта. Работа продолжалась как внерабочая групповая деятельность. [10] Спецификация поиска WebDAV пытается продолжить с того места, на котором остановилась рабочая группа, и была опубликована как RFC 5323 в ноябре 2008 г. [11]
Для календаря CalDAV — это протокол, обеспечивающий доступ к календарю через WebDAV. CalDAV моделирует события календаря как ресурсы HTTP в формате iCalendar , а календари, содержащие события, моделирует как коллекции WebDAV.
Для программного обеспечения групповой работы GroupDAV представляет собой вариант WebDAV, который позволяет системам программного обеспечения групповой работы клиент/сервер хранить и извлекать такие объекты, как элементы календаря и записи адресной книги, вместо веб-страниц.
Для совместимости с MS Exchange WebDAV можно использовать для чтения, обновления и удаления элементов в почтовом ящике или общей папке. WebDAV для Exchange был расширен Microsoft для работы с данными обмена сообщениями. Сервер Exchange версии 2000, 2003 и 2007 поддерживает WebDAV. Однако поддержка WebDAV прекращена в Exchange 2010. [12] в пользу Exchange Web Services (EWS), SOAP / XML на основе API .
Дополнительные расширения для Windows
[ редактировать ]В составе комплекта документации по протоколам Windows Server (WSPP) [13] Microsoft опубликовала следующие протокольные документы с подробным описанием расширений WebDAV:
- [MS-WDVME]: Протокол веб-распределенной разработки и управления версиями (WebDAV): расширения Microsoft. [14] Эти расширения включают в себя новый глагол, новые заголовки и свойства, которые позволяют использовать ранее неуправляемые типы файлов и оптимизируют взаимодействие протоколов для клиентов файловой системы. Эти расширения привносят в WebDAV новые функции, оптимизируют обработку и устраняют необходимость обработки в особых случаях.
- [MS-WDV]: Протокол веб-распределенной разработки и управления версиями (WebDAV): клиентские расширения. [15] Клиентские расширения в этой спецификации расширяют протокол WebDAV, вводя новые заголовки, которые позволяют использовать типы файлов, которыми в настоящее время невозможно управлять, и оптимизируют взаимодействие протоколов для клиентов файловой системы. Эти расширения не привносят новые функциональные возможности в протокол WebDAV, а вместо этого оптимизируют обработку и устраняют необходимость обработки в особых случаях.
- [MS-WDVSE]: Протокол веб-распределенной разработки и управления версиями (WebDAV): Серверные расширения. [16] Серверные расширения в этой спецификации расширяют WebDAV, вводя новые заголовки HTTP-запросов и ответов, которые позволяют использовать типы файлов, которыми в настоящее время невозможно управлять, и оптимизируют взаимодействие протоколов для клиентов файловой системы. В этой спецификации также представлен новый метод WebDAV, который используется для отправки поисковых запросов разным поставщикам поиска.
- [MS-WEBDAVE]: Спецификация протокола расширений ошибок распределенной веб-авторской разработки и управления версиями. [17] Этот интерфейсный протокол SharePoint описывает расширенные коды ошибок и расширенный механизм обработки ошибок, указанный в [MS-WDV], позволяющий совместимым серверам сообщать подробности об ошибках в ответе сервера.
Клиенты WebDAV
[ редактировать ]Клиент | Создатель | Поддержка операционной системы | Лицензия | Интерфейс |
---|---|---|---|---|
Кибердак | David V. Kocher | Windows, МакОС | лицензия GPL | графический интерфейс |
Давфс2 | команда ГНОМА | ПРЕДОХРАНИТЕЛЬ | лицензия GPL | ВФС |
Давикс | ЦЕРН | Виндовс, Линукс, МакОС | LGPL | интерфейс командной строки |
EasySync | Сэмюэл ЧЕМЛА | Андроид | С | услуга |
гвфс | команда ГНОМА | ГНОМ | лицензия GPL | ВФС |
ЧТО | команда KDE | ГДЕ | лицензия GPL | ВФС |
Конкерор | команда KDE | ГДЕ | лицензия GPL | графический интерфейс |
Файлы GNOME | команда ГНОМА | ГНОМ | лицензия GPL | графический интерфейс |
СмартFTP | ООО СмартСофт | Окна | Собственный | графический интерфейс |
Веб-Диск | Саут-Ривер Технологии | Windows, macOS , iOS, Android | Собственный | ВФС |
WinSCP | Мартин Пршикрыл | Окна | лицензия GPL | Интерфейс командной строки и графический интерфейс |
Веб-клиент (устарело) [18] | Майкрософт | Окна | То же, что и Windows | услуга |
библиотеки WebDAV
[ редактировать ]Библиотеки | Создатель | Операционная система или платформа | Лицензия | Язык |
---|---|---|---|---|
Апач Винк | Основа программного обеспечения Apache | JVM | Ява | |
Апач Томкэт | Основа программного обеспечения Apache | JVM | Ява | |
Апачский кролик | Основа программного обеспечения Apache | JVM | АЧС | Ява |
сабля/дав | фрукты | Виндовс, Линукс, МакОС | Новый БСД | PHP |
Альтернативы 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.
См. также
[ редактировать ]- КалДАВ
- КартаDAV
- ГруппаDAV
- Управление контентом
- Сравнение программного обеспечения WebDAV
- Распределенная файловая система
- Подача OSID
- ЛЕД
- Переносимость данных
Ссылки
[ редактировать ]- ^ Уайтхед и Голанд 1999 , с. 293.
- ^ Уайтхед 1998 , с. 34.
- ^ Уайтхед и Голанд 1999 , с. 294.
- ^ «Предлагаемая повестка дня встречи в Сан-Матео» . 1996.
- ^ «Краткое содержание мтг.» . 1996.
- ^ «Re: Обновленная повестка дня» .
- ^ Уайтхед 1998 , с. 40.
- ^ Уайтхед 1998 , с. 39-40.
- ^ Уайтхед и Голанд 1999 , с. 299.
- ^ DASL. Архивировано 3 июня 2004 г. в Wayback Machine.
- ^ ПОИСК WebDav
- ^ Функции, выпуск которых прекращен: Справка по Exchange 2010 SP1 Microsoft TechNet
- ^ «WSPP — документация по протоколам Windows Server» . 2011.
- ^ «MS-WDVME — протокол веб-распределенной разработки и управления версиями (WebDAV): расширения Microsoft» . 2014.
- ^ «MS-WDV — протокол веб-распределенной разработки и управления версиями (WebDAV): клиентские расширения» . 2011.
- ^ «MS-WDVSE — протокол распределенной веб-авторизации и управления версиями (WebDAV): серверные расширения» . 2011.
- ^ «MS-WEBDAVE — спецификация протокола расширений ошибок распределенной веб-авторской разработки и управления версиями» . 2011.
- ^ «Устаревшие функции для клиента Windows» . Что нового в Windows . Майкрософт . Проверено 4 ноября 2023 г. - через Microsoft Learn.
- ^ Рау, Томас (19 октября 2017 г.). «Потоковое воспроизведение фильмов, музыки и изображений в домашней сети» . ПК-ВЕЛЬТ (на немецком языке) . Проверено 5 ноября 2020 г.
- Уайтхед, Э. Джеймс; Голанд, Ярон Ю. (1999). «ВебДАВ». Экскв' 99 . Нидерланды: Springer Science+Business Media . стр. 291–310. дои : 10.1007/978-94-011-4441-4_16 . ISBN 978-94-011-4441-4 .
- Уайтхед, Э.Дж. (1998). «WebDAV: стандарт IEFT для совместной разработки в Интернете» . IEEE Интернет-вычисления . 2 (5): 34–40. дои : 10.1109/4236.722228 . ISSN 1941-0131 . Проверено 12 октября 2021 г.
Внешние ссылки
[ редактировать ]- Официальный сайт WebDAV
- Awesome WebDAV Кураторский список замечательных приложений, поддерживающих WebDAV, и связанных с ним инструментов.
- Проект Давфс2
- Проект Фуседав
- Модули WebDAV Apache