WebDAV
Kommunikationsprotokoll | |
OSI lager | Ansökan |
---|---|
Hamnar) | 80, 443 |
RFC(s) | RFC 2518, RFC 4918 |
Hemsida |
WebDAV ( Web Distributed Authoring and Versioning ) är en uppsättning tillägg till Hypertext Transfer Protocol (HTTP), som gör det möjligt för användaragenter att i samarbete skapa innehåll direkt i en HTTP-webbserver genom att tillhandahålla faciliteter för samtidighetskontroll och namnutrymmesoperationer , vilket gör det möjligt för webben att ses som ett skrivbart, samarbetsmedium och inte bara ett skrivskyddat medium. WebDAV definieras i RFC 4918 av en arbetsgrupp från Internet Engineering Task Force ( IETF).
WebDAV-protokollet tillhandahåller ett ramverk för användare att skapa, ändra och flytta dokument på en server . De viktigaste funktionerna inkluderar underhåll av egenskaper om ett författare- eller ändringsdatum, namnområdeshantering , samlingar och överskrivningsskydd. Underhåll av egenskaper inkluderar sådant som att skapa, ta bort och fråga efter filinformation. Namnutrymmeshantering handlar om möjligheten att kopiera och flytta webbsidor inom en servers namnområde. Samlingar handlar om att skapa, ta bort och lista olika resurser. Slutligen hanterar överskrivningsskydd aspekter relaterade till låsning av filer. Den drar nytta av befintlig teknik som Transport Layer Security , autentisering av digest access eller XML för att uppfylla dessa krav.
Många moderna operativsystem tillhandahåller inbyggt stöd på klientsidan för WebDAV.
Historia
WebDAV började 1996 när Jim Whitehead arbetade med World Wide Web Consortium (W3C) för att vara värd för två möten för att diskutera problemet med distribuerad författarskap på World Wide Web med intresserade människor. Tim Berners-Lees ursprungliga vision av webben involverade ett medium för både läsning och skrivning. Faktum är att Berners-Lees första webbläsare , kallad WorldWideWeb , kunde både visa och redigera webbsidor ; men när webben växte blev det ett skrivskyddat medium för de flesta användare. Whitehead och andra likasinnade ville överskrida den begränsningen.
Mötena resulterade i bildandet av en IETF-arbetsgrupp eftersom den nya satsningen skulle leda till utökningar av HTTP, som IETF hade börjat standardisera.
När arbetet inleddes med protokollet stod det klart att hantering av både distribuerad författarskap och versionering tillsammans skulle innebära för mycket arbete och att uppgifterna måste separeras. WebDAV-gruppen fokuserade på distribuerad författarskap och lämnade versionshantering för framtiden. ( Delta-V-tillägget lade till versionshantering senare – se avsnittet Tillägg nedan.)
WebDAV- arbetsgruppen avslutade sitt arbete i mars 2007, efter att Internet Engineering Steering Group (IESG) accepterat en inkrementell uppdatering av RFC 2518 . Andra tillägg som lämnats oavslutade vid den tiden, såsom BIND-metoden, har slutförts av deras individuella författare, oberoende av den formella arbetsgruppen.
Genomförande
WebDAV utökar uppsättningen standard HTTP-verb och rubriker som är tillåtna för begäransmetoder . De tillagda verben inkluderar:
Verb | Handling |
---|---|
KOPIERA | kopiera en resurs från en enhetlig resursidentifierare (URI) till en annan |
LÅSA | sätta ett lås på en resurs. WebDAV stöder både delade och exklusiva lås. |
MKCOL | skapa samlingar (även känd som en katalog ) |
FLYTTA | flytta en resurs från en URI till en annan |
PROPFIND | hämta egenskaper, lagrade som XML , från en webbresurs . Den är också överbelastad för att tillåta en att hämta samlingsstrukturen (även känd som kataloghierarki) för ett fjärrsystem. |
PROPPATCH | ändra och ta bort flera egenskaper på en resurs i en enda atomär handling |
LÅSA UPP | ta bort ett lås från en resurs |
Egenskaper
Egenskaperna för WebDAV-protokollet är namn–värdepar , där ett "namn" är en URI ( Uniform Resource Identifier ) och "värdena" uttrycks genom XML-element. Vidare metoderna för att hantera egenskaperna PROPFIND och PROPPATCH .
Serverstöd
- iceWarp tillhandahåller Webdav inbyggd funktionalitet till sin webbklient och skrivbordsapplikationer, *DAV-stöd: CalDAV , CardDAV , webbdokument och samarbetsredigering.
- Apache HTTP Server tillhandahåller WebDAV-moduler baserade på både davfs och Apache Subversion (svn) .
- Caddy har en valfri WebDAV-modul.
- EGroupware , ett gruppprogram med fullt *DAV-stöd: CalDAV , CardDAV och WebDAV för filhanteraren.
- lighttpd har en valfri WebDAV-modul.
- Mailfence erbjuder WebDAV-stöd genom en virtuell enhet+ du kan ansluta externa enheter till Mailfence-dokument.
- Nextcloud är en gaffel av ownCloud, och erbjuder därför även fullt WebDAV-stöd.
- Nginx har en mycket begränsad valfri WebDAV-modul (Obs: fullt WebDAV-stöd för IIS 7 tillhandahölls genom en separat nedladdning som avbröts i juli 2021.).
-
Rclone inkluderar stöd för WebDAV genom kommandot
serve webdav .
Kundsupport
WinSCP från Martin Přikryl
Dokument framtagna av arbetsgruppen
WebDAV-arbetsgruppen producerade flera arbeten:
- ett kravdokument: "Requirements for a Distributed Authoring and Versioning Protocol for the World Wide Web" RFC 2291 , utfärdat februari 1998
- ett basprotokolldokument (exklusive versionshantering, trots dess titel): "HTTP Extensions for Web Distributed Authoring and Versioning (WebDAV)" RFC 4918 , utfärdat juni 2007 (som uppdaterar och ersätter "HTTP Extensions for Distributed Authoring – WebDAV" RFC 2518 , utfärdat februari 1999)
- protokollet för beställda samlingar: "Web Distributed Authoring and Versioning (WebDAV) Ordered Collections Protocol" RFC 3648 , utfärdat december 2003
- åtkomstkontrollprotokollet: "Web Distributed Authoring and Versioning (WebDAV) Access Control Protocol" RFC 3744 , utfärdat maj 2004
- en kvotspecifikation: "Quota and Size Properties for Distributed Authoring and Versioning (DAV) Collections" RFC 4331 , utfärdad februari 2006
- en omdirigeringsspecifikation: "Web Distributed Authoring and Versioning (WebDAV) Redirect Redirect Resources" RFC 4437 , utfärdad i mars 2006
Andra dokument publicerade genom IETF
- versionsprotokollet: "Versioneringstillägg till WebDAV (Web Distributed Authoring and Versioning)" RFC 3253 (skapat av Delta-V-arbetsgruppen)
- en specifikation av WebDAV-egendomsdatatyper: "Datatyper för webbdistribuerade författande och versionshantering (WebDAV) Properties" RFC 4316
- ett dokument som definierar hur man initierar montering av en WebDAV-resurs: "Mounting Web Distributed Authoring and Versioning (WebDAV) Servers" RFC 4709
- ett kalenderåtkomstprotokoll: "Calendaring Extensions to WebDAV ( CalDAV )" RFC 4791
- ett frågeprotokoll: "Web Distributed Authoring and Versioning (WebDAV) SEARCH" RFC 5323
- ett tillägg till WebDAV ACL-specifikationen: "WebDAV Current Principal Extension" RFC 5397
- ett tillägg till WebDAV MKCOL-metoden: "Extended MKCOL for Web Distributed Authoring and Versioning (WebDAV)" RFC 5689
- en förlängning av samlingsmodellen, som definierar skapande och upptäckt av ytterligare bindningar till en resurs: "Binding Extensions to Web Distributed Authoring and Versioning (WebDAV)" RFC 5842
- en applikation av POST till WebDAV-samlingar: "Using POST to Add Members to Web Distributed Authoring and Versioning (WebDAV) Collections" RFC 5995
- ett tillägg som möjliggör effektiv synkronisering av stora samlingar: "Synkronisering av samlingar för webbdistribution och versionering (WebDAV)" RFC 6578
Tillägg och derivat
För versionshantering lägger Delta-V-protokollet under arbetsgruppen för webbversionshantering och konfigurationshantering till resursrevisionsspårning, publicerad i RFC 3253 .
För sökning och lokalisering producerade DAV Searching and Locating (DASL) arbetsgruppen aldrig någon officiell standard även om det finns ett antal implementeringar av dess senaste utkast. Arbetet fortsatte som icke-arbetsgruppsverksamhet. WebDAV Search-specifikationen försöker fortsätta där arbetsgruppen slutade och publicerades som RFC 5323 i november 2008.
För kalender är CalDAV ett protokoll som tillåter kalenderåtkomst via WebDAV. CalDAV modellerar kalenderhändelser som HTTP-resurser i iCalendar- format och modellerar kalendrar som innehåller händelser som WebDAV-samlingar.
För groupware är GroupDAV en variant av WebDAV som tillåter klient/server groupware- system att lagra och hämta objekt som kalenderobjekt och adressboksposter istället för webbsidor.
För MS Exchange-kompatibilitet kan WebDAV användas för att läsa/uppdatera/ta bort objekt i en brevlåda eller offentlig mapp. WebDAV för Exchange har utökats av Microsoft för att kunna arbeta med meddelandedata. Exchange Server version 2000, 2003 och 2007 stöder WebDAV. WebDAV-stödet har dock upphört i Exchange 2010 till förmån för Exchange Web Services (EWS), ett SOAP / XML -baserat API .
Ytterligare Windows-specifika tillägg
Som en del av Windows Server Protocols (WSPP) dokumentationsuppsättning publicerade Microsoft följande protokolldokument som beskriver tillägg till WebDAV:
- [MS-WDVME]: Webddistribuerad författarskap och versionering (WebDAV) Protocol: Microsoft Extensions. Dessa tillägg inkluderar ett nytt verb och nya rubriker och egenskaper som möjliggör tidigare ohanterliga filtyper och optimerar protokollinteraktioner för filsystemklienter. Dessa tillägg introducerar ny funktionalitet i WebDAV, optimerar bearbetningen och eliminerar behovet av specialfallsbehandling.
- [MS-WDV]: Web Distribuerad författande och versionering (WebDAV) Protocol: Klienttillägg. Klienttilläggen i denna specifikation utökar WebDAV-protokollet genom att introducera nya rubriker som både möjliggör de filtyper som för närvarande inte är hanterbara och optimerar protokollinteraktioner för filsystemklienter. Dessa tillägg introducerar inte ny funktionalitet i WebDAV-protokollet, utan optimerar istället bearbetningen och eliminerar behovet av specialfallsbehandling.
- [MS-WDVSE]: Webbdistribuerad författande och versionering (WebDAV) Protocol: Servertillägg. Servertilläggen i denna specifikation utökar WebDAV genom att introducera nya HTTP-begäran och svarsrubriker som både möjliggör de filtyper som för närvarande inte är hanterbara och optimerar protokollinteraktioner för filsystemklienter. Denna specifikation introducerar också en ny WebDAV-metod som används för att skicka sökfrågor till olika sökleverantörer.
- [MS-WEBDAVE]: Protokollspecifikation för protokollspecifikation för webbdistribuerad författar- och versionsfelstillägg. Detta SharePoint Front-End-protokoll beskriver utökade felkoder och utökad felhanteringsmekanism som specificeras i [MS-WDV] för att göra det möjligt för kompatibla servrar att rapportera feltillståndsdetaljer på ett serversvar.
WebDAV-klienter
Klient | Skapare | Stöd för operativsystem | Licens | Gränssnitt |
---|---|---|---|---|
Cyberand | David V. Kocher | Windows, macOS | GPL | GUI |
davfs2 | GNOME-teamet | SÄKRING | GPL | VFS |
davix | CERN | Windows, Linux, macOS | LGPL | CLI |
GVfs | GNOME-teamet | GNOME | GPL | VFS |
KIO | KDE-teamet | KDE | GPL | VFS |
Konqueror | KDE-teamet | KDE | GPL | GUI |
GNOME-filer | GNOME-teamet | GNOME | GPL | GUI |
SmartFTP | SmartSoft Ltd | Windows | Proprietär | GUI |
WebDrive | South River Technologies | Windows, macOS , iOS, Android | Proprietär | VFS |
WinSCP | Martin Přikryl | Windows | GPL | CLI och GUI |
WebDAV-bibliotek
Bibliotek | Skapare | Operativsystem eller plattform | Licens | Språk |
---|---|---|---|---|
Apache blinkning | Apache Software Foundation | JVM | Java | |
Apache Tomcat | Apache Software Foundation | JVM | Java | |
Apache Jackrabbit | Apache Software Foundation | JVM | ASF | Java |
sabel/dav | fruux | Windows, Linux, macOS | Ny BSD | PHP |
Alternativ till WebDAV
- File Transfer Protocol (FTP), ett enkelt och brett anpassat nätverksprotokoll baserat på IP , tillåter användare att överföra filer mellan nätverksvärdar. FTPS utökar FTP för säker trafik.
- SSH File Transfer Protocol (SFTP), en förlängning av Secure Shell Protocol (SSH) version 2.0, ger säker filöverföringskapacitet; och scp, en form av SFTP som körs som ett enda kommando som liknar ett vanligt cp-kommando (kopiera) i skalet.
- Rsync , ett protokoll och ett kommando som liknar scp, som också kan hoppa över att skriva om identiska filer och delar av filer, eller hoppa över nyare filer, etc.
- Ett distribuerat filsystem som protokollet Server Message Block (SMB) tillåter Microsoft Windows och Samba -klienter med öppen källkod att komma åt och hantera filer och mappar på distans på en lämplig filserver . Används vanligtvis för multimediaströmning över Ethernet och stöds brett av smarta TV-apparater .
- AtomPub , ett HTTP-baserat protokoll för att skapa och uppdatera webbresurser, kan användas för vissa användningsfall av WebDAV. Den är baserad på vanliga HTTP-verb med standardiserade samlingsresurser som beter sig ungefär som WebDAV-modellen av kataloger.
- CMIS , en standard som består av en uppsättning webbtjänster för att dela information mellan olika innehållsförråd, strävar efter att säkerställa interoperabilitet för människor och applikationer som använder flera innehållsförråd; den har både SOAP - och AtomPub-baserade gränssnitt
- Wiki-programvara , såsom MediaWiki .
- Linked Data Platform (LDP), en länkad dataspecifikation som definierar en uppsättning integrationsmönster för att bygga RESTful HTTP-tjänster som kan läsa-skriva RDF-data.
- Objektlagring som OpenStack Swift eller Amazon S3
Se även
- CalDAV
- CardDAV
- GroupDAV
- Innehållshantering
- Jämförelse av WebDAV-programvara
- Distribuerat filsystem
- Arkivera OSID
- IS
- Dataportabilitet
- Whitehead, E. James; Goland, Yaron Y. (1999). WebDAV: Ett nätverksprotokoll för fjärrsamarbete på webben . Neathlands: Springer Science+Business Media . doi : 10.1007/978-94-011-4441-4_16 . ISBN 978-94-011-4441-4 .
- Whitehead, EJ (1998). "WebDAV: IEFT-standard för samarbetsskapande på webben" . IEEE Internet Computing . 2 (5): 34–40. doi : 10.1109/4236.722228 . ISSN 1941-0131 . Hämtad 12 oktober 2021 .
externa länkar
- Officiell WebDAV-sida
- Awesome WebDAV En kurerad lista över fantastiska appar som stöder WebDAV och verktyg relaterade till det.
- Davfs2 projekt
- Fusedav projekt
- WebDAV Apache-moduler