WebDAV Anleitung · 4 min read · Dec 03, 2025
So richten Sie WebDAV mit Lighttpd auf Mandriva 2008.1 ein
So richten Sie WebDAV mit Lighttpd auf Mandriva 2008.1 ein
Version 1.0
Autor: Falko Timme
Dieser Leitfaden erklärt, wie man WebDAV mit lighttpd auf einem Mandriva 2008.1-Server einrichtet. WebDAV steht für Web-basiertes verteiltes Autoring und Versionierung und ist eine Reihe von Erweiterungen des HTTP-Protokolls, die es Benutzern ermöglichen, Dateien direkt auf dem lighttpd-Server zu bearbeiten, sodass sie nicht über FTP heruntergeladen/hochgeladen werden müssen. Natürlich kann WebDAV auch zum Hochladen und Herunterladen von Dateien verwendet werden.
Ich gebe keine Garantie, dass dies bei Ihnen funktioniert!
1 Vorbemerkung
Ich verwende hier einen Mandriva 2008.1-Server mit der IP-Adresse 192.168.0.100.
2 Installation von WebDAV
Bevor wir Pakete installieren, müssen wir die Haupt-, Haupt-Updates-, Contrib- und Contrib-Updates-Repositorys aktivieren. Gehen Sie zu http://easyurpmi.zarb.org/ - es sollte Ihnen die Befehle geben, die Sie ausführen müssen, um diese Repositorys zu aktivieren. In meinem Fall habe ich ausgeführt
urpmi.addmedia contrib ftp://distrib-coffee.ipsl.jussieu.fr/pub/linux/MandrivaLinux/official/2008.1/i586/media/contrib/release with media_info/hdlist.czurpmi.addmedia --update contrib_updates ftp://distrib-coffee.ipsl.jussieu.fr/pub/linux/MandrivaLinux/official/2008.1/i586/media/contrib/updates with media_info/hdlist.czurpmi.addmedia main ftp://distrib-coffee.ipsl.jussieu.fr/pub/linux/MandrivaLinux/official/2008.1/i586/media/main/release with media_info/hdlist.czurpmi.addmedia --update main_updates ftp://distrib-coffee.ipsl.jussieu.fr/pub/linux/MandrivaLinux/official/2008.1/i586/media/main/updates with media_info/hdlist.czSie können lighttpd installieren (falls es noch nicht installiert ist), das lighttpd WebDAV-Modul und das apache-base-Paket (das das Tool htpasswd enthält, das wir später benötigen, um eine Passwortdatei für den WebDAV-Share zu generieren) wie folgt:
urpmi lighttpd lighttpd-mod_webdav lighttpd-mod_auth apache-baseWenn Sie bereits Apache installiert haben, sollten Sie es jetzt stoppen und die Systemstartlinks von Apache entfernen, damit es nicht mit lighttpd interferiert (Sie können die folgenden beiden Befehle ausführen, auch wenn Sie nicht wissen, ob Sie Apache installiert haben):
/etc/init.d/httpd stop
chkconfig httpd offDann starten wir lighttpd:
/etc/init.d/lighttpd startAls nächstes öffnen wir /etc/lighttpd/lighttpd.conf und aktivieren/fügen die Module mod_alias, mod_webdav und mod_auth im server.modules-Block hinzu (es ist wichtig, dass mod_webdav vor mod_auth aufgeführt ist!):
vi /etc/lighttpd/lighttpd.conf| [...] server.modules = ( # "mod_rewrite", # "mod_redirect", "mod_alias", "mod_access", # "mod_cml", # "mod_trigger_b4_dl", "mod_webdav", "mod_auth", # "mod_status", # "mod_setenv", # "mod_fastcgi", # "mod_proxy", # "mod_simple_vhost", # "mod_evhost", # "mod_userdir", # "mod_cgi", # "mod_compress", # "mod_ssi", # "mod_usertrack", # "mod_expire", # "mod_secdownload", # "mod_rrdtool", "mod_accesslog" ) [...] |
Starten Sie lighttpd anschließend neu:
/etc/init.d/lighttpd restart3 Erstellen eines virtuellen Hosts
Ich werde jetzt einen lighttpd vhost ( www.example.com) im Verzeichnis /var/www/web1/web erstellen. Wenn Sie bereits einen vhost haben, für den Sie WebDAV aktivieren möchten, müssen Sie dieses Tutorial an Ihre Situation anpassen.
Zuerst erstellen wir das Verzeichnis /var/www/web1/web und machen den lighttpd-Benutzer und die Gruppe (sie heißen apache auf Mandriva!) zum Eigentümer dieses Verzeichnisses:
mkdir -p /var/www/web1/web
chown apache:apache /var/www/web1/webDann öffnen wir /etc/lighttpd/lighttpd.conf und fügen den folgenden vhost ans Ende der Datei hinzu:
vi /etc/lighttpd/lighttpd.conf| [...] $HTTP["host"] == "www.example.com" { server.document-root = "/var/www/web1/web" } |
Anschließend starten wir lighttpd neu:
/etc/init.d/lighttpd restart4 Konfigurieren Sie den virtuellen Host für WebDAV
Jetzt erstellen wir die WebDAV-Passwortdatei /var/www/web1/passwd.dav mit dem Benutzer test (der -c-Schalter erstellt die Datei, wenn sie nicht existiert):
htpasswd -c /var/www/web1/passwd.dav testSie werden aufgefordert, ein Passwort für den Benutzer test einzugeben.
(Bitte verwenden Sie nicht den -c-Schalter, wenn /var/www/web1/passwd.dav bereits existiert, da dies die Datei von Grund auf neu erstellt, was bedeutet, dass Sie alle Benutzer in dieser Datei verlieren!)
Jetzt ändern wir die Berechtigungen der Datei /var/www/web1/passwd.dav, sodass nur root und die Mitglieder der apache-Gruppe darauf zugreifen können:
chown root:apache /var/www/web1/passwd.dav
chmod 640 /var/www/web1/passwd.davJetzt ändern wir unseren vhost in /etc/lighttpd/lighttpd.conf, sodass er wie folgt aussieht:
vi /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($|/)" { dir-listing.activate = "enable" webdav.activate = "enable" webdav.is-readonly = "disable" auth.backend = "htpasswd" auth.backend.htpasswd.userfile = "/var/www/web1/passwd.dav" auth.require = ( "" => ( "method" => "basic", "realm" => "webdav", "require" => "valid-user" ) ) } } |
Die alias.url-Direktive sorgt dafür, dass (zusammen mit $HTTP[“url”] =~ “^/webdav($|/)”) beim Aufruf von /webdav WebDAV aufgerufen wird, Sie jedoch weiterhin auf das gesamte Dokumentenstammverzeichnis des vhosts zugreifen können. Alle anderen URLs dieses vhosts sind weiterhin “normal” HTTP.
Starten Sie lighttpd anschließend neu:
/etc/init.d/lighttpd restart5 Testen von WebDAV
Wir werden jetzt cadaver installieren, einen Befehlszeilen-WebDAV-Client:
urpmi cadaverUm zu testen, ob WebDAV funktioniert, geben Sie ein:
cadaver http://www.example.com/webdav/Sie sollten nach einem Benutzernamen gefragt werden. Geben Sie test und dann das Passwort für den Benutzer test ein. Wenn alles gut geht, sollten Sie Zugriff erhalten, was bedeutet, dass WebDAV in Ordnung ist. Geben Sie quit ein, um die WebDAV-Shell zu verlassen:
[root@server1 ~]# cadaver http://www.example.com/webdav/
Authentifizierung erforderlich für webdav auf dem Server `www.example.com':
Benutzername: test
Passwort:
dav:/webdav/> quit
Verbindung zu `www.example.com' geschlossen.
[root@server1 ~]#6 Konfigurieren Sie einen Windows XP-Client, um sich mit dem WebDAV-Share zu verbinden
Dies wird auf https://www.howtoforge.com/setting-up-webdav-with-apache2-on-debian-etch-p2 beschrieben.
Bitte geben Sie den Port in der WebDAV-URL an, z. B. http://www.example.com:80/webdav. Aus irgendeinem seltsamen Grund akzeptiert Windows XP den normalen Benutzernamen (z. B. test) - andernfalls erwartet Windows XP NTLM-Benutzernamen (die die Form www.example.com\test hätten).
7 Konfigurieren Sie einen Linux-Client (GNOME), um sich mit dem WebDAV-Share zu verbinden
Dies wird auf https://www.howtoforge.com/setting-up-webdav-with-apache2-on-debian-etch-p3 beschrieben.
8 Links
- WebDAV: http://www.webdav.org
- Lighttpd: http://www.lighttpd.net
- Mandriva: http://www.mandriva.com
Erhalte neue Beiträge in deinem Posteingang.
Kein Spam. Jederzeit abmelden.