WebDAV, en entier : Web-based Distributed Authoring and Versioning, est un protocole déjà ancien (1996) mais qui a curieusement longtemps été méconnu.
Il permet pourtant une chose essentielle : écrire sur le Web, au lieu de seulement surfer (c'est-à-dire seulement lire).
En pratique WebDAV est principalement utilisé pour partager des fichiers de manière sécurisée (service cloud par exemple). Il possède lui-même deux extensions largement utilisées :
Ces protocoles sont couramment utilisés pour synchroniser ses données de manière sécurisée entre ses différents appareils (smartphone, ordinateur, cloud), et éventuellement les partager avec un groupe de travail, ou ses relations.
C'est un protocole ouvert : le W3C (organisme qui normalise le Web) en a confié le développement à l'IETF qui avait déjà normalisé HTTP.
Techniquement, WebDAV est une extension du HTTP. Au delà des GET et POST bien connus, WebDAV ajoute les méthodes PUT, DELETE, COPY, PROPFIND, etc.
Pour les curieux, la norme est la RCF 2518.
WebDAV fonctionne donc dans à peu près toutes les situations où la navigation n'est pas bloquée.
WebDAV est implémenté par la plupart des serveurs HTTP, ou éventuellement disponible via l'ajout d'extensions.
C'est par exemple le cas d'Apache : vous pouvez créer votre propre espace de stockage WebDAV en ajoutant le module DAV.
Nginx, Caddy et Lighttpd disposent aussi de modules WebDAV.
Il existe aussi des serveurs plus spécialisés, qui permettent de déployer facilement des services complets et utilisables :
En plus des prestataires Nextcloud, il existe de nombreux autres fournisseurs de stockage en ligne, gratuits ou payants, qui offrent un espace de stockage accessible via WebDAV.
Parmi ceux qui proposent un service gratuit et respectueux2) (et aussi des offres payantes), on peut citer :
Le client WebDAV le plus évident est le navigateur web.
Le gestionnaire de fichiers par défaut d'Ubuntu, GNOME Fichiers, permet d'accéder aux stockages WebDAV distants.
Ctrl+L), entrer l'URI suivant en remplaçant mon.serveur.exemple.com par l'adresse de votre serveur :davs://mon.serveur.exemple.com/
La copie de fichiers peut se faire par cliquer-glisser dans la fenêtre de GNOME Fichiers comme sur votre système de fichiers local.
Pour accéder directement à un répertoire donné (pratique avec l'utilisation des signets), il suffit d'ajouter le chemin en fin d'URL :
davs://mon.serveur.exemple.com/le/chemin/voulu/
Ceci fait apparaître l'emplacement de stockage correspondant en bas du panneau latéral de GNOME Fichiers.
Afin d'utiliser le protocole WebDAV dans Caja, renseigner l'URI comme emplacement, en commençant par davs://mon.serveur.exemple.com/.
Les utilisateurs de Xubuntu préféreront monter leurs serveurs WebDAV via gigolo qui est déjà intégré à la distribution.
Les performances de WebDAV peuvent paraître décevantes comparées à d'autres protocoles comme SFTP.
En effet, l'emploi de rsync avec davfs2 est loin d'être idéal. Certains clients n'offrent pas non plus les performances espérées.
À l'inverse rclone est très performant et supporte de très nombreux services de stockage en ligne. Il implémente entre autres WebDAV, ce qui lui permet de remplacer très avantageusement rsync (on peut espérer multiplier les vitesses de transfert par 50 !) ou d'autres clients, comme celui de Nextcloud.
Il permet de plus de réaliser toutes sortes d'opérations.
Cadaver est un client WebDAV en ligne de commande.
Il est disponible dans les dépôts officiels d'Ubuntu, il suffit donc d'installer le paquet cadaver.
Voir par exemple cette documentation en français : Terminal : webdav avec cadaver.