Diese Dokumentation wurde zur Beschreibung der Serie 1.6.x von Subversion erstellt. Falls Sie eine unterschiedliche Version von Subversion einsetzen, sei Ihnen dringend angeraten, bei http://www.svnbook.com/ vorbeizuschauen und stattdessen die zu Ihrer Version von Subversion passende Version dieser Dokumentation heranzzuiehen.
Alle WebDAV-Clients fallen in eine von drei Kategorien – eigenständige Anwendungen, Erweiterungen von Dateisystem-Browsern oder Dateisystem-Erweiterungen. Diese Kategorien definieren grob die Typen der WebDAV-Funktionen, die für Anwender verfügbar sind. Tabelle C.1, „Verbreitete WebDAV-Clients“ zeigt sowohl unsere Kategorisierung als auch eine kurze Beschreibung verbreiteter WebDAV-fähiger Software. Weitere Einzelheiten über diese Software und deren allgemeine Kategorie finden Sie in den folgenden Abschnitten.
Tabelle C.1. Verbreitete WebDAV-Clients
Software | Typ | Windows | Mac | Linux | Beschreibung |
---|---|---|---|---|---|
Adobe Photoshop | Eigenständige WebDAV-Anwendung | X | Bildbearbeitungs-Software, die das direkte Lesen und Schreiben über WebDAV-URLs erlaubt | ||
cadaver | Eigenständige WebDAV-Anwendung | X | X | Kommandozeilen-WebDAV-Client, der Dateiübertragung, Baum- und Sperroperationen unterstützt | |
DAV Explorer | Eigenständige WebDAV-Anwendung | X | X | X | Java Werkzeug mit graphischer Benutzerschnittstelle zum Erkunden von WebDAV-Freigaben |
Adobe Dreamweaver | Eigenständige WebDAV-Anwendung | X | Software zum Erstellen von Webseiten, die direkt über WebDAV-URLs lesen und schreiben kann | ||
Microsoft Office | Eigenständige WebDAV-Anwendung | X | Büroanwendungspaket mit verschiedenen Komponenten, die direkt über WebDAV-URLs lesen und schreiben können | ||
Microsoft Web Folders | WebDAV-Erweiterung für Dateisystem-Browser | X | Dateisystem-Browser mir graphischer Benutzerschnittstelle, der Baumoperationen auf WebDAV Freigaben durchführen kann | ||
GNOME Nautilus | WebDAV-Erweiterung für Dateisystem-Browser | X | Dateisystem-Browser mir graphischer Benutzerschnittstelle, der Baumoperationen auf WebDAV Freigaben durchführen kann | ||
KDE Konqueror | WebDAV-Erweiterung für Dateisystem-Browser | X | Dateisystem-Browser mir graphischer Benutzerschnittstelle, der Baumoperationen auf WebDAV Freigaben durchführen kann | ||
Mac OS X | WebDAV-Dateisystemimplementierung | X | Betriebssystem mit eingebauter Unterstützung zum Einhängen von WebDAV-Freigaben | ||
Novell NetDrive | WebDAV-Dateisystemimplementierung | X | Programm zum Zuweisen von Windows Laufwerksbuchstaben auf eingehängte WebDAV-Freigaben | ||
SRT WebDrive | WebDAV-Dateisystemimplementierung | X | Dateiübertragungs-Software, die, neben anderen Dingen, die Zuordnung von Windows Laufwerksbuchstaben auf eingehängte WebDAV-Freigaben zulässt | ||
davfs2 | WebDAV-Dateisystemimplementierung | X | Linux Dateisystemtreiber, der das Einhängen einer WebDAV-Freigabe zulässt |
Eine WebDAV-Anwendung ist ein Programm, das über WebDAV-Protokolle mit einem WebDAV-Server spricht. Wir behandeln einige der am weitesten verbreiteten Programme mit dieser Art von WebDAV-Unterstützung.
Unter Windows besitzen mehrere wohlbekannte Anwendungen eine integrierte WebDAV-Client Funktionalität, so wie Microsofts Office[63], Adobes Photoshop und Dreamweaver. Sie sind in der Lage, direkt über URLs zu lesen und zu schreiben und neigen dazu, bei der Bearbeitung von Dateien regen Gebrauch von WebDAV-Sperren zu machen.
Beachten Sie, dass viele dieser Programme, obwohl sie auch für Mac OS X verfügbar sind, auf dieser Plattform jedoch WebDAV nicht direkt unterstützen. Tatsächlich erlaubt der Dialog
auf Mac OS X überhaupt nicht die Eingabe eines Pfades oder eines URL. Wahrscheinlich wurden die WebDAV-Fähigkeiten auf Macintosh-Versionen dieser Programme absichtlich weggelassen, da OS X bereits eine ausgezeichnete WebDAV-Unterstützung auf Dateisystemebene bietet.cadaver ist ein sich auf das Wesentliche beschränkendes Unix-Kommandozeilenwerkzeug zum Durchforsten und Ändern von WebDAV-Freigaben. So wie der Subversion-Client verwendet es die HTTP-Bibliothek neon – das ist nicht überraschend, da sowohl neon als auch cadaver vom selben Autor stammen. cadaver ist freie Software (GPL Lizenz) und über http://www.webdav.org/cadaver/ erhältlich.
Die Verwendung von cadaver ist ähnlich wie die Verwendung eines Kommandozeilen-FTP-Programms und eignet sich deshalb besonders für die einfache WebDAV-Fehlersuche. Zur Not kann es zum Herauf- oder Herunterladen von Dateien verwendet werden, um Eigenschaften zu untersuchen und zum Kopieren, Verschieben, Sperren und Entsperren von Dateien:
$ cadaver http://host/repos dav:/repos/> ls Listing collection `/repos/': succeeded. Coll: > foobar 0 May 10 16:19 > playwright.el 2864 May 4 16:18 > proofbypoem.txt 1461 May 5 15:09 > westcoast.jpg 66737 May 5 15:09 dav:/repos/> put README Uploading README to `/repos/README': Progress: [=============================>] 100.0% of 357 bytes succeeded. dav:/repos/> get proofbypoem.txt Downloading `/repos/proofbypoem.txt' to proofbypoem.txt: Progress: [=============================>] 100.0% of 1461 bytes succeeded.
DAV Explorer ist ein weiterer selbständiger WebDAV-Client, der in Java geschrieben ist. Er steht unter einer freien Apache-ähnlichen Lizenz und ist erhältlich über http://www.ics.uci.edu/~webdav/. Er macht alles, was auch cadaver macht, hat jedoch den Vorteil, ein portables, benutzerfrundliches Programm mit einer graphischen Benutzeroberfläche zu sein. Er ist auch einer der ersten Clients, die das neue WebDAV-Zugriffskontrollprotokoll (RFC 3744) unterstützen.
Natürlich ist die ACL-Unterstützung von DAV Explorer in
diesem Fall nutzlos, da sie nicht von
mod_dav_svn unterstützt wird. Die
Tatsache, dass sowohl cadaver als auch DAV Explorer einige
eingeschränkte DeltaV-Befehle unterstützen, ist ebenfalls
nicht sehr nützlich, da sie keine
MKACTIVITY
-Anfragen erlauben. Es ist
jedenfalls belanglos; wir nehmen an, dass all diese Clients
mit einem autoversionierenden Projektarchiv zusammenarbeiten.
Einige verbreitete graphische Dateisystem-Browser unterstützen WebDAV-Erweiterungen, die es Benutzern erlauben, eine DAV-Freigabe zu durchstöbern als sei es ein gewöhnliches Verzeichnis auf dem lokalen Rechner und einfache Bearbeitungen der Dateisystemobjekte über diese Freigabe vorzunehmen. So ist beispielsweise der Windows Explorer in der Lage, einen WebDAV-Server als „Netzwerkumgebung“ zu durchstöbern. Benutzer können Dateien auf die oder von der Arbeitsoberfläche ziehen oder Dateien auf althergebrachte Weise umbenennen, kopieren oder löschen. Da es jedoch eine Fähigkeit des Explorers ist, ist die DAV-Freigabe für normale Anwendungen nicht sichtbar. Alle Zugriffe auf DAV müssen über die Schnittstelle des Explorers erfolgen.
Microsoft war unter den ursprünglichen Unterstützern der WebDAV-Spezifikation und begann, den ersten Client in Windows 98 auszuliefern, der als Webordner bekannt wurde. Dieser Client wurde auch mit Windows NT 4.0 und Windows 2000 ausgeliefert.
Der ursprüngliche Webordner-Client war eine Erweiterung des Explorers, dem graphischen Hauptprogramm zum Durchstöbern von Dateisystemen. Er arbeitet gut genug. In Windows 98 könnte es sein, das dieses Merkmal ausdrücklich installiert werden muss, falls Webordner noch nicht innerhalb von Mein Computer sichtbar sind. In Windows 2000 muss einfach eine neue „Netzwerkumgebung“ hizugefügt und ein URL eingegeben werden, und die WebDAV-Freigabe erscheint zum Durchstöbern.
Mit der Einführung von Windows XP begann Microsoft, eine
neue Implementierung der Webordner herauszugeben, die unter
dem Namen WebDAV-Mini-Redirector bekannt wurde. Die neue
Implementierung ist ein Client auf Dateisystemebene, die es
ermöglicht, WebDAV-Freigaben unter einem Laufwerksbuchstaben
einzuhängen. Leider ist diese Implementierung unglaublich
fehlerhaft. Für gewöhnlich versucht der Client, HTTP-URLs
(http://host/repos
) in
UNC-Freigabe-Darstellung (\\host\repos
)
umzuwandeln; er versucht darüber hinaus,
Windows-Domänen-Authentifizierung als Antwort auf
Basic-Authentication HTTP-Anforderungen zu verwenden, wobei
Anwendernamen als RECHNER\anwendername
gesendet werden. Diese Probleme bei der Zusammenarbeit sind
schwerwiegend und an zahlreichen Orten rund um die Welt
dokumentiert, was viele Benutzer frustriert. Sogar Greg
Stein, der ursprüngliche Autor von Apaches WebDAV-Modul,
sagt ohne Umschweife, dass die Webordner von XP nicht mit
einem Apache-Server zusammenarbeiten können.
Die erste Implementierung der Webordner in Windows Vista scheint fast die gleiche wie unter XP zu sein, so dass dieselben Probleme auftauchen. Mit etwas Glück wird Microsoft diese Probleme in einem Vista-Service-Pack beheben.
Jedoch scheint es provisorische Lösungen sowohl für XP und Vista zu geben, die es Webordner ermöglichen, mit Apache zusammenzuarbeiten. Benutzer haben meistens berichtet, dass diese Techniken erfolgreich waren, also werden wir sie an dieser Stelle weitergeben.
Unter Windows XP haben Sie zwei Optionen. Suchen Sie
zunächst in der Webpräsenz von Microsoft nach dem Update
KB907306, „Software Update for Web Folders“. Das
könnte all Ihre Probleme lösen. Falls nicht, scheinen sich die
originalen Webordner aus der Zeit vor XP in Ihrem System zu
verbergen. Sie können sie ans Licht holen, indem Sie in
Netzwerkumgebung gehen und eine neue Umgebung anlegen. Wenn
Sie danach gefragt werden, tragen Sie den URL des Projektarchivs
ein, aber verwenden Sie dabei eine
Portnummer im URL. Beispielsweise sollten Sie statt
http://host/repos
http://host:80/repos
eingeben.
Antworten Sie auf irgendwelche Authentifizierungsanfragen mit
Ihren Subversion-Zugangsdaten.
Unter Windows Vista könnte derselbe Update KB907306 alles
bereinigen. Dort könnte es jedoch noch weitere Probleme
geben. Einige Benutzer haben berichtet, dass Vista alle
http://
-Verbindungen als unsicher
betrachtet, und deshalb alle Authentifizierungsanforderungen
seitens Apache scheitern lässt, sofern sie nicht über
https://
erfolgen. Sollten Sie nicht in
der Lage sein, sich über SSL mit dem Subversion-Projektarchiv
zu verbinden, können Sie die System-Registratur anpassen, um
dieses Verhalten zu unterbinden. Dazu ändern Sie einfach den
Wert des Schlüssels
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters\BasicAuthLevel
von 1
auf 2
.
Eine letzte Warnung: Stellen Sie sicher, den Webordner so
einzurichten, dass er auf das Wurzelverzeichnis des
Projektarchivs (/
) zeigt, statt auf ein
Unterverzeichnis wie etwa /trunk
. Die
Webordner von Vista scheinen nur mit
Projektarchiv-Wurzelverzeichnissen zu funktionieren.
Generell sei gesagt, dass Sie, obwohl diese Zwischenlösungen für Sie funktionieren könnten, mehr Spaß bei der Verwendung eines WebDAV-Clients von einem Drittanbieter haben werden, wie etwa WebDrive oder NetDrive.
Nautilus ist der offizielle Dateimanager/Browser des GNOME-Desktops (http://www.gnome.org), und Konqueror ist der Manager/Browser für den KDE-Desktop (http://www.kde.org). Beide dieser Anwendungen besitzen einen eingebauten WebDAV-Client auf Dateisystem-Browser-Ebene und funktionieren prima mit einem autoversionierenden Projektarchiv.
In GNOMEs Nautilus wählen Sie den Menüeintrag
und tragen den URL in den angebotenen Dialog ein. Das Projektarchiv sollte dann wie ein anderes Dateisystem angezeigt werden.Im Konqueror von KDE müssen Sie beim Eintragen des URL
in den Zielleiste das Schema webdav://
verwenden. Wenn Sie einen http://
-URL
eingeben, verhält sich Konqueror wie ein gewöhnlicher
Web-Browser. Sie werden wahrscheinlich die allgemeine
Verzeichnisauflistung von mod_dav_svn
sehen. Falls Sie statt
http://host/repos
jedoch
webdav://host/repos
eingeben, wird
Konqueror zum WebDAV-Client und zeigt das Projektarchiv als
Dateisystem an.
Die WebDAV-Dateisystem-Implementation ist wohl die beste Art von WebDAV-Client. Sie ist als systemnahes Dateisystem-Modul implementiert, das sich normalerweise innerhalb des Betriebssystemkerns befindet. Das bedeutet, dass eine DAV-Freigabe wie irgendein anderes Dateisystem eingehängt werden kann, ähnlich dem Einhängen einer NFS-Freigabe unter Unix oder dem Sichtbarmachen einer SMB-Freigabe über einen Laufwerksbuchstaben unter Windows. Demzufolge bietet diese Art von Client für alle Programme einen vollständig transparenten WebDAV-Schreib- und Lesezugriff. Die Anwendungen merken nicht einmal, dass WebDAV-Anforderungen stattfinden.
Sowohl WebDrive als auch NetDrive sind ausgezeichnete kommerzielle Produkte, die es ermöglichen, WebDAV-Freigaben unter Windows als Laufwerksbuchstaben einzuhängen. Als Ergebnis können Sie mit den Inhalten dieser Pseudo-Laufwerke mit WebDAV im Hintergrund ebenso einfach und auf dieselbe Weise arbeiten wie mit lokalen Festplatten. Sie können WebDrive von South River Technologies (http://www.southrivertech.com) beziehen. NetDrive von Novell ist frei online verfügbar, die Benutzung erfordert jedoch eine NetWare Lizenz.
Apples Betriebssystem OS X besitzt einen integrierten
WebDAV-Client auf Dateisystemebene. Wählen Sie im Finder den
Menüeintrag webdav
beim Befehl
mount angeben:
$ mount -t webdav http://svn.example.com/repos/project /some/mountpoint $
Beachten Sie, dass OS X sich weigert, die Freigabe les- und schreibbar einzuhängen, sofern die Version Ihres mod_dav_svn älter ist als 1.2; in diesem Fall wird sie nur lesbar sein. Das liegt daran, das OS X auf der Unterstützung von Sperren bei les- und schreibbaren Freigaben besteht, und die Fähigkeit, Dateien zu sperren erst mit Subversion 1.2 erschien.
Des weiteren kann der WebDAV-Client von OS X manchmal
überempfindlich auf HTTP-Weiterleitungen reagieren. Falls OS
X das Projektarchiv überhaupt nicht einhängen kann, könnte es
notwendig sein, die Direktive BrowserMatch
in der Datei httpd.conf
des Apache
Servers zu aktivieren:
BrowserMatch "^WebDAVFS/1.[012]" redirect-carefully
Linux davfs2 ist ein Dateisystem-Modul für den Linux-Kernel, dessen Entwicklung bei http://dav.sourceforge.net/ betrieben wird. Sobald Sie davfs2 installiert haben, können Sie eine WebDAV-Netzfreigabe mit dem üblichen Linux mount-Befehl einhängen:
$ mount.davfs http://host/repos /mnt/dav
[63] WebDAV-Unterstützung wurde aus bestimmten Gründen aus Microsoft Access entfernt, jedoch besteht diese im Rest des Pakets.