| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente |
| webdav [Le 19/02/2026, 21:40] – [Serveurs et prestataires] réorganisation / +seafile / +quickdav / details serveurs http / mise en forme krodelabestiole | webdav [Le 07/09/2026, 11:18] (Version actuelle) – [Gestionnaires de fichiers] typo | uri -> url (ok pour le web) krodelabestiole |
|---|
| ====== WebDAV ====== | ====== WebDAV ====== |
| |
| **[[wpfr>WebDAV]]**, en entier : //**Web**-based **D**istributed **A**uthoring and **V**ersioning//, est un protocole déjà ancien (1996) mais qui a curieusement longtemps été méconnu.\\ | **[[wpfr>WebDAV]]**, en entier\_: //**Web**-based **D**istributed **A**uthoring and **V**ersioning//, 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). | Il permet pourtant une chose essentielle\_: //écrire// sur le [[:Web]], au lieu de seulement "surfer" (c'est-à-dire consulter des pages en lecture seule). |
| |
| En pratique **WebDAV** est principalement utilisé pour [[:partage|partager des fichiers]] de manière sécurisée (service //[[:cloud]]// par exemple). Il possède lui-même deux extensions largement utilisées : | En pratique **WebDAV** est principalement utilisé pour [[:partage|partager des fichiers]] de manière sécurisée (service //[[:cloud]]// par exemple). Il possède lui-même deux extensions largement utilisées\_: |
| * **[[wpfr>CalDAV]]** permet de gérer des événements et des agendas. | * **[[wpfr>CalDAV]]** permet de gérer des événements et des agendas. |
| * **[[wpfr>CardDAV]]** permet de gérer des contacts et carnets d'adresses. | * **[[wpfr>CardDAV]]** permet de gérer des contacts et carnets d'adresses. |
| 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. | 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 [[wpfr>Format_ouvert|protocole ouvert]] : le [[wpfr>W3C]] (organisme qui normalise le [[:Web]]) en a confié le développement à l'IETF qui avait déjà normalisé HTTP. | C'est un [[wpfr>Format_ouvert|protocole ouvert]]\_: le [[wpfr>W3C]] (organisme qui normalise le [[:Web]]) en a confié le développement à l'IETF qui avait déjà normalisé [[wpfr>Hypertext_Transfer_Protocol|HTTP]]. |
| |
| Techniquement, **WebDAV** est une extension du [[wpfr>Hypertext_Transfer_Protocol|HTTP]]. Au delà des GET et POST bien connus, **WebDAV** ajoute les méthodes PUT, DELETE, COPY, PROPFIND, etc.\\ | Techniquement, **WebDAV** est une extension du [[wpfr>Hypertext_Transfer_Protocol|HTTP]]. Au delà des requêtes GET et POST bien connues,((voir //[[:apache2#Mode de fonctionnement sommaire]]//)) **WebDAV** ajoute les méthodes PUT, DELETE, COPY, PROPFIND, etc.\\ |
| Pour les curieux, la norme est la [[http://www.webdav.org/specs/rfc2518.fr.html|RCF 2518]].\\ | Pour les curieux, la norme est la [[http://www.webdav.org/specs/rfc2518.fr.html|RCF 2518]]. |
| **WebDAV** fonctionne donc dans à peu près toutes les situations où la navigation n'est pas bloquée. | |
| | Contrairement à d'autres protocoles de [[:partage]], **WebDAV** fonctionne donc dans à peu près toutes les situations où la navigation n'est pas bloquée, et est parfaitement adapté et suffisamment sécurisé pour des échanges sur [[:Internet]] (du moins avec l'utilisation de [[wpfr>Transport_Layer_Security|SSL/TLS]], soit [[:web#http|HTTPS]]). |
| | |
| | <note> |
| | Les applications et environnements utilisent parfois des noms de protocoles non standards tels que ''davs'' ([[:GNOME]]) ou ''webdav'' ([[:KDE]]).\\ |
| | -- Le schéma standard du protocole est ''[[wpfr>Schéma_d'URI#Schémas_enregistrés_auprès_de_l'IANA|dav]]''. |
| | </note> |
| |
| ===== Serveurs et prestataires ===== | ===== Serveurs et prestataires ===== |
| |
| **WebDAV** est implémenté par la plupart des [[:web#serveurs|serveurs HTTP]], ou éventuellement disponible via l'ajout d'extensions.\\ | **WebDAV** est implémenté par la plupart des [[:web#serveurs|serveurs HTTP]], ou éventuellement disponible via l'ajout d'extensions.\\ |
| C'est par exemple le cas d'[[:apache2|Apache]] : vous pouvez créer votre propre espace de stockage **WebDAV** en ajoutant le [[https://httpd.apache.org/docs/2.4/fr/mod/mod_dav.html|module DAV]].\\ | C'est par exemple le cas d'[[:apache2|Apache]]\_: on peut créer son propre espace de stockage **WebDAV** en ajoutant le [[https://httpd.apache.org/docs/2.4/fr/mod/mod_dav.html|module DAV]].\\ |
| [[:Nginx]], [[https://caddyserver.com/|Caddy]] et [[:Lighttpd]] disposent aussi de modules WebDAV. | [[:Nginx]], [[https://caddyserver.com/|Caddy]] et [[:Lighttpd]] disposent aussi de modules WebDAV. |
| |
| Il existe aussi des applications plus spécialisées, qui permettent de déployer facilement des services complets et utilisables : | Il existe aussi des serveurs plus spécialisés, qui permettent de déployer facilement des services complets et utilisables\_: |
| | * **[[:Nextcloud]]** est une solution de choix quand on cherche un service de [[:cloud]] [[:anonymat|respectueux de la vie privée]]\_: |
| * **[[:Nextcloud]]** est une solution de choix quand on cherche un service de [[:cloud]] [[:anonymat|respectueux de la vie privée]] : | |
| * Principalement basé sur **WebDAV** et ses extensions (**CalDAV**, **CardDAV**) | * Principalement basé sur **WebDAV** et ses extensions (**CalDAV**, **CardDAV**) |
| * Possibilité de s'[[:hebergement#auto-hebergement|auto-héberger]] (et de profiter d'un espace considérable pour un prix modique) | * Possibilité de s'[[:hebergement#auto-hebergement|auto-héberger]] (et de profiter d'un espace considérable pour un prix modique) |
| * Interface web moderne | * Interface web moderne |
| * Nombreux [[:nextcloud#clients]] spécifiques disponibles sur toutes les plateformes dont [[:GNOME]] et [[:KDE]] (ainsi que Windows, macOS, Android, etc.) | * Nombreux [[:nextcloud#clients]] spécifiques disponibles sur toutes les plateformes dont [[:GNOME]] et [[:KDE]] (ainsi que Windows, macOS, Android, etc.) |
| * Il existe des services tiers qui ne requièrent pas de serveurs personnels ni de grosses connaissances techniques : voir la [[:nextcloud#prestataires|liste des prestataires Nextcloud]]. | * Il existe des services tiers qui ne requièrent pas de serveurs personnels ni de grosses connaissances techniques\_: voir la [[:nextcloud#prestataires|liste des prestataires Nextcloud]]. |
| |
| * **[[https://www.seafile.com/|Seafile]]**(([[https://github.com/haiwen/seafile|GitHub]])) dispose d'une [[https://manual.seafile.com/13.0/extension/webdav/|extension WebDAV]]. Il est aussi possible de l'[[:hebergement#auto-hebergement|auto-héberger]]. Il est plus simple mais propose moins de fonctionnalités que [[:Nextcloud]]. | * **[[https://www.seafile.com/|Seafile]]**(([[https://github.com/haiwen/seafile|GitHub]])) dispose d'une [[https://manual.seafile.com/13.0/extension/webdav/|extension WebDAV]]. Il est aussi possible de l'[[:hebergement#auto-hebergement|auto-héberger]]. Il est plus simple mais propose moins de fonctionnalités que [[:Nextcloud]]. |
| |
| En plus des [[:nextcloud#prestataires|prestataires Nextcloud]], il existe de nombreux autres fournisseurs de stockage en ligne, gratuits ou payants, qui offrent un espace de stockage accessible via **WebDAV**.\\ | En plus des [[:nextcloud#prestataires|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 ont une offre gratuite (et aussi des offres payantes), on peut citer : | Parmi ceux qui proposent un service gratuit et respectueux(([[:anonymat|vie privée]], engagement écologique...)) (et aussi des offres payantes), on peut citer\_: |
| | * **Infomaniak** propose [[https://www.infomaniak.com/fr/ksuite|kSuite]], un service de [[:cloud]] respectueux de la vie privée plutôt orienté pour les entreprises. En tant que particulier on peut profiter d'un espace **WebDAV** gratuit\_: |
| * **Infomaniak** propose [[https://www.infomaniak.com/fr/ksuite|kSuite]], un service de [[:cloud]] respectueux de la vie privée plutôt orienté pour les entreprises. En tant que particulier on peut profiter d'un espace **WebDAV** gratuit : | |
| * 15 Go de stockage | * 15 Go de stockage |
| * WebDAV sécurisé | * WebDAV sécurisé |
| * Interface web moderne | * Interface web moderne |
| * pas de taille de fichier max | * pas de taille de fichier max |
| |
| * **[[http://www.box.net|Box.net]]** propose une version gratuite : | |
| * 5 Go de stockage | |
| * WebDAV sécurisé | |
| * Partages avec des amis | |
| * **Inconvénient** : pour visualiser les fichiers en mode Web il vous faudra absolument Flash | |
| * **Inconvénient** : Taille des fichiers maxi assez faible : 250Mo | |
| |
| <note>Voir aussi les pages //[[:hébergement]]// et //[[:cloud]]//.</note> | <note>Voir aussi les pages //[[:hébergement]]// et //[[:cloud]]//.</note> |
| Le client **WebDAV** le plus évident est le [[:navigateur]] web. | Le client **WebDAV** le plus évident est le [[:navigateur]] web. |
| |
| ==== Gestionnaires de fichier ==== | ==== Gestionnaires de fichiers ==== |
| |
| === GNOME Fichiers === | === GNOME Fichiers === |
| |
| Le [[:gestionnaire de fichiers]] par défaut d'Ubuntu, **[[:nautilus|GNOME Fichiers]]**, permet d'accéder aux stockages **WebDAV** distants. | Le [[:gestionnaire de fichiers]] par défaut d'Ubuntu, **[[:nautilus|GNOME Fichiers]]**, permet d'accéder aux stockages **WebDAV** distants.\\ |
| | **[[:nautilus|GNOME Fichiers]]** utilise les noms de protocole ''dav'' (non sécurisé) et ''davs'' (avec [[wpfr>Transport_Layer_Security|SSL/TLS]]). |
| |
| * Ouvrir **[[:nautilus|GNOME Fichiers]]**, puis dans la [[:nautilus_utilisation_avancee#afficher_le_chemin_dans_la_barre_d_adresse|barre d'adresse]] (''Ctrl''+''L''), entrer l'[[:réseau#URI]] suivant en remplaçant ''mon.serveur.exemple.com'' par l'[[:réseau#nom d'hôte|adresse]] de votre serveur :<code>davs://mon.serveur.exemple.com/</code> | * Ouvrir **[[:nautilus|GNOME Fichiers]]**, puis dans la [[:nautilus_utilisation_avancee#afficher_le_chemin_dans_la_barre_d_adresse|barre d'adresse]] (''Ctrl''+''L''), entrer l'[[:web#URL]] suivante en remplaçant ''example.com'' par l'[[:réseau#nom d'hôte|adresse]] du serveur\_:<code>davs://example.com/</code> |
| * Validez, puis saisissez vos identifiant utilisateurs et mot de passe dans la fenêtre suivante. | * Valider, puis saisir l'identifiant utilisateur et le mot de passe dans la fenêtre suivante. |
| |
| La copie de fichiers peut se faire par cliquer-glisser dans la fenêtre de **[[:nautilus|GNOME Fichiers]]** comme sur votre [[:système de fichiers]] local. | Dans la fenêtre de **[[:nautilus|GNOME Fichiers]]**, le déplacement ou la copie de fichiers distants peut alors se faire par cliquer-glisser comme sur un [[:système de fichiers]] local. |
| |
| Pour accéder directement à un répertoire donné (pratique avec l'utilisation des [[:nautilus#signets]]), il suffit d'ajouter le [[:chemins|chemin]] en fin d'[[:web#URL]] : | Pour accéder directement à un répertoire donné (pratique avec l'utilisation des [[:nautilus#signets]]), il suffit d'ajouter le [[:chemins|chemin]] en fin d'[[:web#URL]]\_: |
| <code>davs://mon.serveur.exemple.com/le/chemin/voulu/</code> | <code>davs://example.com/le/chemin/voulu/</code> |
| |
| <note>Pour plus d'informations, et [[:nautilus#afficher_les_miniatures_sur_les_stockages_distants|afficher les vignettes]], voir le chapitre plus général //[[:nautilus#Accès aux partages réseau]]// de la documentation de GNOME Fichiers.</note> | <note> |
| | Pour plus d'informations, et [[:nautilus#afficher_les_miniatures_sur_les_stockages_distants|afficher les vignettes]], voir le chapitre plus général //[[:nautilus#Accès aux partages réseau]]// de la documentation de GNOME Fichiers. |
| | </note> |
| |
| <note tip> | <note tip> |
| On peut aussi utiliser la fonctionnalité [[:gnome-online-accounts|GNOME Comptes en ligne]] pour un accès permanent : | On peut aussi utiliser la fonctionnalité [[:gnome-online-accounts|GNOME Comptes en ligne]] pour un accès permanent\_: |
| - Créer un compte [[:Nextcloud]] ou **WebDAV**. | - Créer un compte [[:Nextcloud]] ou **WebDAV**. |
| - Activer le sélecteur //Fichiers// pour ce compte. | - Activer le sélecteur //Fichiers// pour ce compte. |
| === Caja (MATE) === | === Caja (MATE) === |
| |
| Afin d'utiliser le protocole **WebDAV** dans Caja, renseigner l'[[:réseau#URI]] comme emplacement, en commençant par ''%%davs://mon.serveur.exemple.com/%%''. | Afin d'utiliser le protocole **WebDAV** dans Caja, renseigner l'[[:web#URL]] comme emplacement, en commençant par ''%%davs://example.com/%%''. |
| |
| === Dolphin (KDE) === | === Dolphin (KDE) === |
| |
| Sous [[:KDE]] le gestionnaire de fichier par défaut **[[:Dolphin]]** implémente aussi **WebDAV**. | Sous [[:KDE]] le gestionnaire de fichiers par défaut **[[:Dolphin]]** implémente aussi **WebDAV**. |
| | |
| | **[[:Dolphin]]** utilise par contre des noms de protocoles non standards pour construire les [[:réseau#URI]]\_: ''webdav'' (non sécurisé), ou ''webdavs'' (avec [[wpfr>Transport_Layer_Security|SSL/TLS]]). |
| | |
| | * Ouvrir **[[:Dolphin]]**, puis dans la barre d'adresse entrer l'[[:web#URL]] suivante en remplaçant ''example.com'' par l'[[:réseau#nom d'hôte|adresse]] du serveur\_:<code>webdavs://example.com/</code> |
| | * Une boîte de dialogue apparaît ensuite pour demander le nom d'utilisateur et le mot de passe. |
| |
| === Gigolo (XFCE) === | === Gigolo (XFCE) === |
| Les utilisateurs de [[:Xubuntu]] préféreront monter leurs serveurs **WebDAV** via **[[:gigolo]]** qui est déjà intégré à la distribution. | Les utilisateurs de [[:Xubuntu]] préféreront monter leurs serveurs **WebDAV** via **[[:gigolo]]** qui est déjà intégré à la distribution. |
| |
| ==== Montage en système de fichier ==== | ==== Montage en système de fichiers ==== |
| |
| * Vous pouvez monter votre espace **WebDAV** comme un espace de stockage local (avec [[:FUSE]]) en utilisant **[[:davfs2]]**. | * On peut monter un espace **WebDAV** (distant) comme un espace de stockage local (avec [[:FUSE]]) en utilisant **[[:davfs2]]**. |
| * **[[https://github.com/miquels/webdavfs|webdavfs]]** est une alternative plus performante à [[:davfs2]]. | * **[[https://github.com/miquels/webdavfs|webdavfs]]** est une alternative plus performante à [[:davfs2]]. |
| * **[[rclone]]** permet aussi de [[:rclone#montage|monter des espace WebDAV comme des volumes]]. | * **[[rclone]]** permet aussi de [[:rclone#montage|monter des espace WebDAV comme des volumes]], ce qui est certainement la solution la plus performante\_! |
| |
| ==== Rclone ==== | ==== Rclone ==== |
| 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. | 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-client|Nextcloud]]. | À 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-client|Nextcloud]]. |
| |
| Il permet de plus de réaliser [[:rclone#utilisation|toutes sortes d'opérations]]. | Il permet de plus de réaliser [[:rclone#utilisation|toutes sortes d'opérations]]. |
| Il est disponible dans les [[:depots#dépôts officiels]] d'Ubuntu, il suffit donc d'[[:deb#installer_un_paquet_deb|installer le paquet]] ''[[apt>cadaver]]''. | Il est disponible dans les [[:depots#dépôts officiels]] d'Ubuntu, il suffit donc d'[[:deb#installer_un_paquet_deb|installer le paquet]] ''[[apt>cadaver]]''. |
| |
| Voir par exemple cette documentation en français : //[[https://cestpas.net/linux/terminal-webdav-avec-cadaver|Terminal : webdav avec cadaver]]//. | Voir par exemple cette documentation en français\_: //[[https://cestpas.net/linux/terminal-webdav-avec-cadaver|Terminal : webdav avec cadaver]]//. |
| |
| ===== Voir aussi ===== | ===== Voir aussi ===== |