WebDAV

WebDAV (англ. Web-based Distributed Authoring and Versioning) — це набір розширень та доповнень до протоколу HTTP (Hypertext Transfer Protocol), які дозволяють користувачам спільно редагувати та керувати файлами на веб-серверах. Група розробників, відповідальних за ці розширення, була також відома під цим же іменем і була робочою групою Internet Engineering Task Force (IETF).

Протокол надає можливість «Intercreativity» (спільної роботи, дає можливість не просто спілкуватися, а й створювати), це робить Веб середовищем для читання та також і для записування, згідно з лінією Тіма Бернерса-Лі (Tim Berners-Lee). Протокол забезпечує функціональність створювати, змінювати та переміщувати документи на віддаленому сервері (типова назва веб-сервер чи веб-шара (web share)). Це корисно, поза іншим, для авторизації документів, але також може бути корисним для загального веб-базованого зберігання файлів.

Більшість сучасних операційних систем мають вбудовану підтримку протоколу WebDAV як клієнти.

Важливі можливості у WebDAV протоколу

  • Блокування -- довгострокове блокування документа від внесення змін. Встановлення заборони на запис у файл іншим користувачам дозволяє зберегти монопольний доступ незалежно від якості мережевого підключення, а також в випадках його тимчасової втрати.
  • Властивості -- цей механізм дозволяє приписувати документу будь-які атрибути, які можуть оброблятись окремо та не залежно від самого документа. Тобто створювати метадані документа. Зазвичай описуються в форматі XML. Наприклад, це може бути: перелік авторів, посилання на первинне джерело документа, анотація, зміст тощо. Для роботи безпосередньо із метаданими протокол DAV має відповідні команди. Протокол DASL (DAV Searching and Locating) [1] надає можливості пошуку та знаходження розташування веб-ресурсів по їх властивостям.
  • Простір імен (Namespace) -- механізм організації колекцій документів, схожий на роботу із теками в файловій системі.

Особливості протоколу

Повна реалізація протоколу дозволяє:

  • Виконувати основні файлові операції над об'єктами, що зберігаються на сервері.
  • Виконувати додаткові операції з об'єктами, такими як, блокування, забезпечення версійності.
  • Операції над будь-яким об'єктом.
  • Робота із метаданими.
  • Виконання операцій над групою об'єктів.

ПЗ, що реалізує цей протокол, використовується для організації сумісної роботи декількох користувачів над документами. Є повноцінною альтернативою використанню FTP або SMB.

Команди протоколу

WebDAV додає в протокол HTTP наступні команди [2]:

  • PROPFIND -- отримання властивостей об'єкта в форматі XML. Команда дозволяє отримати структуру репозиторія.
  • PROPPATCH -- внести зміни у властивості об'єкта за одну транзакцію.
  • MKCOL -- створити колекцію об'єктів.
  • COPY -- створює копію вказаного ресурсу URI.
  • MOVE -- перенести ресурс з одного URI в інший.
  • LOCK -- встановити блокування ресурсу. WebDAV підтримує як ексклюзивні так й загальні (shared) блокування.
  • UNLOCK -- зняти блокування з ресурсу.

Реалізації

Нижче в розділах наведені деякі приклади, порівняльна таблиця ПЗ наведена в Comparison of WebDAV software.

Сервер

Приклад серверного ПЗ, що підтримує протокол WebDAV:

  • Крос платформений Apache HTTP Server має WebDAV модулі, що спираються на davfs та Apache Subversion (svn).
  • Microsoft IIS має WebDAV модуль.
  • nginx має модуль з доволі обмеженою підтримкою WebDav [3] та додатковий модуль [4]

Клієнти

  • В Linux ресурси WebDAV можна примонтувати в загальну файлову систему за допомогою утиліті davfs2.
  • OS X Apple використовує WebDAV для роботи сервісу iDisk.
  • Microsoft SharePoint також використовує WebDAV.
  • WebDAV вбудований у MS Windows. Служба має назву WebClient, а в IE — Web Folders. Ресурси WebDAV можна підключити як звичайні мережеві диски.

Альтернативні протоколи

  • File Transfer Protocol (FTP) -- простий мережевий протокол, побудований поверх IP, який дозволяє користувачам передавати файли між вузлами мережі (комп'ютерами). FTPS розширення FTP для захищеного обміну через шифрування трафіку.
  • SSH File Transfer Protocol (SFTP) -- розширення SSH-протоколу версії 2.0 для забезпечення захищеного обміну файлами.
  • Розподілена файлова система така, як Server Message Block (SMB) дозволяє Microsoft Windows або вільним Samba клієнтам отримувати доступ та керувати файлами й теками віддалено на відповідному файловому сервері.
  • AtomPub -- HTTP- для створення та оновлення веб-ресурсів, може в деяких випадках використовуватись як WebDAV. Він заснований на стандартних HTTP визначеннях (HTTP командами) із стандартними колекціями ресурсів, поведінка яких подібна моделі поведінки каталогів в WebDAV.
  • Сумісні сервіси керування наповненням (CMIS) -- стандарт, що складається з набору Вебсервісів для обміну інформацією між різнорідними репозитаріями, прагне забезпечити функціональну сумісність для людей і додатків, що використовують кілька сховищ контенту. Підтримує як SOAP так й AtomPub подібні інтерфейси.
  • Wiki software, наприклад MediaWiki.

Примітки

  1. Офіційний сайт протоколу DASL. Архів оригіналу за 3 червня 2004. Процитовано 9 жовтня 2016.
  2. RFC 4918 Команди протоколу
  3. Модуль ngx_http_dav_module. nginx website. Процитовано 15 липня 2016.
  4. Модуль nginx-dav-ext-module. github.com. Процитовано 2 серпня 2016.

Посилання

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.