WebDAV Lighttpd · 3 min read · Dec 17, 2025
Comment installer WebDAV avec Lighttpd sur Debian 8 (Jessie)
Ce guide explique comment configurer WebDAV avec Lighttpd sur un serveur Debian 8 (Jessie). WebDAV signifie Web-based Distributed Authoring and Versioning et est un ensemble d’extensions au protocole HTTP qui permet aux utilisateurs d’éditer directement des fichiers sur le serveur Lighttpd afin qu’ils n’aient pas besoin d’être téléchargés/téléversés via FTP. Bien sûr, WebDAV peut également être utilisé pour télécharger et téléverser des fichiers.
1 Remarque Préliminaire
J’utilise ici un serveur Debian 8 avec l’adresse IP 192.168.1.100. Ma configuration est basée sur le tutoriel du serveur minimal Debian, mais tout système Debian qui n’exécute pas encore de serveur web devrait convenir.
2 Installation de WebDAV
Vous pouvez installer lighttpd (s’il n’est pas déjà installé), le module WebDAV de lighttpd et le paquet apache2-utils (qui contient l’outil htpasswd dont nous aurons besoin plus tard pour générer un fichier de mot de passe pour le partage WebDAV) comme suit :
apt-get -y install lighttpd lighttpd-mod-webdav apache2-utilsEnsuite, nous devons nous assurer que le répertoire /var/run/lighttpd appartient à l’utilisateur et au groupe www-data. Ce répertoire contiendra une base de données SQLite nécessaire à WebDAV :
chown www-data:www-data /var/run/lighttpd/Ensuite, nous activons les modules mod_auth et mod_webdav :
lighty-enable-mod auth
lighty-enable-mod webdavRechargez Lighttpd ensuite :
service lighttpd force-reload3 Création d’un Hôte Virtuel
Je vais maintenant créer un vhost Lighttpd ( www.example.com) dans le répertoire /var/www/web1/web. Si vous avez déjà un vhost pour lequel vous souhaitez activer WebDAV, vous devez ajuster ce tutoriel à votre situation.
Tout d’abord, nous créons le répertoire /var/www/web1/web et faisons de l’utilisateur lighttpd ( www-data) le propriétaire de ce répertoire :
mkdir -p /var/www/web1/web
chown www-data:www-data /var/www/web1/webEnsuite, nous ouvrons /etc/lighttpd/lighttpd.conf et ajoutons le vhost suivant à la fin du fichier :
nano /etc/lighttpd/lighttpd.conf[...]
$HTTP["host"] == "www.example.com" {
server.document-root = "/var/www/web1/web"
}Ensuite, nous redémarrons lighttpd :
service lighttpd restart4 Configurer l’Hôte Virtuel pour WebDAV
Maintenant, nous créons le fichier de mot de passe WebDAV /var/www/web1/passwd.dav avec l’utilisateur test (l’option -c crée le fichier s’il n’existe pas) :
htpasswd -c /var/www/web1/passwd.dav testVous serez invité à taper un mot de passe pour l’utilisateur test.
(Veuillez ne pas utiliser l’option -c si /var/www/web1/passwd.dav existe déjà car cela recréera le fichier à partir de zéro, ce qui signifie que vous perdrez tous les utilisateurs dans ce fichier !)
Maintenant, nous changeons les permissions du fichier /var/www/web1/passwd.dav afin que seul root et les membres du groupe www-data puissent y accéder :
chown root:www-data /var/www/web1/passwd.dav
chmod 640 /var/www/web1/passwd.davMaintenant, nous modifions notre vhost dans /etc/lighttpd/lighttpd.conf pour qu’il ressemble à ceci :
nano /etc/lighttpd/lighttpd.conf$HTTP["host"] == "www.example.com" {
server.document-root = "/var/www/web1/web"
alias.url = ( "/webdav" => "/var/www/web1/web" )
$HTTP["url"] =~ "^/webdav($|/)" {
webdav.activate = "enable"
webdav.is-readonly = "disable"
dir-listing.activate = "enable"
webdav.sqlite-db-name = "/var/run/lighttpd/lighttpd.webdav_lock.db"
auth.backend = "htpasswd"
auth.backend.htpasswd.userfile = "/var/www/web1/passwd.dav"
auth.require = ( "" => ( "method" => "basic",
"realm" => "webdav",
"require" => "valid-user" ) )
}
}La directive alias.url fait (avec $HTTP[“url”] =~ “^/webdav($|/)”) que lorsque vous appelez /webdav, WebDAV est invoqué, mais vous pouvez toujours accéder à l’ensemble du document racine du vhost. Tous les autres URL de ce vhost sont toujours des HTTP “normaux”.
Redémarrez Lighttpd ensuite :
service lighttpd restart5 Tester WebDAV
Nous allons maintenant installer cadaver, un client WebDAV en ligne de commande :
apt-get -y install cadaverPour tester si WebDAV fonctionne, tapez :
cadaver http://www.example.com/webdav/Vous devriez être invité à entrer le nom d’utilisateur. Tapez test puis le mot de passe pour l’utilisateur test. Si tout se passe bien, vous devriez avoir accès, ce qui signifie que WebDAV fonctionne correctement. Tapez quit pour quitter le shell WebDAV :
root@server1:/home/administrator# cadaver http://www.example.com/webdav/
Authentication required for webdav on server `www.example.com':
Username: test
Password:
dav:/webdav/> quit
Connection to `www.example.com' closed.
root@server1:/home/administrator#6 Liens
- WebDAV: http://www.webdav.org/
- Lighttpd: http://www.lighttpd.net/
- Debian: http://www.debian.org/
Recevez de nouveaux articles dans votre boîte de réception.
Aucun spam. Désabonnez-vous à tout moment.