Damit nicht versehentlich mehrere Benutzer gleichzeitig in eine Datei schreiben und somit Daten unweigerlich verloren gehen, sperrt Apache den Zugriff. Alle diese Locks merkt sich der Webserver in einer kleinen Datenbank, genauer gesagt in einer SDBM-Datei, wie sie auch bei der Benutzer- und Passwortverwaltung zum Einsatz kommt. Diese Datenbank erstellt und verwaltet das Modul
»mod_dav_fs
«
selbständig. Wo es sie auf dem Server ablegt, bestimmt die Direktive
»DavLockDB
«
. Der dahinter folgende Wert setzt sich aus dem Pfad (im Beispiel
»/usr/local/apache2/var/
«
) und einem Dateinamen ohne Endung (hier
»DavLock
«
) zusammen. Apache muss für das das gewählte Verzeichnis Schreibrechte besitzen, sonst kommt es im Betrieb zu einem etwas merkwürdigen Verhalten. Beispielsweise lassen sich Dateien zwar lesen, aber nicht auf dem Server ablegen oder aber es hagelt Fehlermeldungen vom Typ
»Internal Server Error
«
. Man sollte in solchen Fällen immer einen Blick in die Apache Log-Datei
»error_log
«
werfen. Findet sich dort die Meldung
»Could not open the lock database
«
(unter Umständen mit anderen Fehlern vermischt), so stimmen die Zugriffsrechte auf die Lock-Datenbank nicht.
Wie lange eine Datei gesperrt bleibt, bestimmt maßgeblich der zugreifende Client. Über die optionale Direktive
»DavMinTimeout
«
kann der Administrator aber auch eine Mindestsperrdauer vorgeben. Per
DavMinTimeout 300
bleiben Dateien beispielsweise mindestens für fünf Minuten gesperrt.
Abschließend bleibt nur noch, den Webserver neu zu starten, unter Ubuntu beispielsweise per:
sudo /etc/init.d/apache2 restart
und schon hat jeder Nutzer Zugriff auf das Verzeichnis
»/var/webdav
«
. Gnome-Nutzer zücken dazu einfach den Datei-Browser Nautilus und rufen den Ort
»dav://www.example.com/webdav
«
auf. KDE-4-Nutzer steuern in Dolphin ganz analog die Adresse
»webdav://www.example.com/webdav
«
an. Das erscheinende Verzeichnis kann der Anwender jetzt wie gewohnt verwenden. Alle Dateien, die er dort ablegt, landen automatisch unter
»/var/webdav
«
auf dem Server (
Abbildungen 1
und
2
).
Greift der Anwender über einen normalen Browser, wie etwa Firefox auf die URL
»http://www.example.com/webdav
«
zu, erhält er allerdings noch einen 403-Fehler (
»Zugriff verboten
«
). Abhilfe schafft
»Options +Indexes
«
:
<Directory "/var/webdav"> DAV on Options +Indexes </Directory>
Dateiendschungel
Viele Apache-Installationen lagern die WebDAV-Konfiguration aus, meist in die Datei
»httpd-dav.conf
«
(bei XAMPP liegt sie beispielsweise im Unterverzeichnis
»extra
«
). Gerade bei umfangreichen WebDAV-Konfigurationen sollte man diesem Schema folgen, die Übersicht bleibt so wesentlich besser gewahrt.
Wer virtuelle Hosts eingerichtet hat, spürt zunächst die Konfigurationsdatei auf, die den betroffenen Host einrichtet (Ubuntu und Debian sammeln beispielsweise alle im Verzeichnis
»/etc/apache2/sites-available
«
) und platziert die WebDAV-Anweisungen im entsprechenden
»<VirtualHost ...>
«
-Container.