Remote-Verzeichnis kann nicht mit WebDAV bereitgestellt werden

9

Mit diesem Tutorial habe ich einen Server mit Apache und WebDAV eingerichtet .

Ich habe die WebDAV-Funktionalität mit dem Cyberduck-Client getestet und sie funktioniert einwandfrei. Mit den folgenden Details kann ich sowohl lesen als auch in das Remote-Verzeichnis schreiben.

Details in Cyberducks eingegeben.  Verbindung erfolgreich!

Daher möchte ich dieses Verzeichnis als Laufwerk in Windows 8 bereitstellen, was meiner Meinung nach mit WebDAV möglich sein sollte. Ich klicke mit der rechten Maustaste auf "Computer" und wähle dann "Netzwerklaufwerk zuordnen". Es ist jedoch nicht klar, wie ich die obigen Daten eingeben soll.

Ich habe versucht, die URL so neu zu schreiben, wie ich es mir vorstellen kann, und es mit und ohne "Mit unterschiedlichen Anmeldeinformationen verbinden" versucht.

Es wird immer nur gesagt, dass versucht wird, eine Verbindung herzustellen, und dann nach Anmeldeinformationen gefragt wird (wenn ich das deaktiviert habe). Dann wird der Fehler "0x80070043 Der Netzwerkname kann nicht gefunden werden." Angezeigt.

Geben Sie hier die Bildbeschreibung ein

Was ist falsch? Wie mounte ich ein Remote-Verzeichnis mit WebDAV, wenn nicht wie oben beschrieben?

Mads Skjern
quelle

Antworten:

8

Reibungsloses Segeln mit WebDAV - Microsoft Clients und Apache Servern

Standardmäßig verarbeitet Windows 7 und höher WebDAV nur über sichere Sockets (SSL). Der einfache Ausweg besteht darin, ein SSL-Zertifikat zu erhalten und auf Ihrem Server zu installieren. Danach könnte Ihre serverseitige Konfiguration folgendermaßen aussehen:

    Alias /webdav  /var/www/webdav

    <Directory /var/www/webdav>
            DAV on
            Satisfy all
            Order allow,deny
            Allow from all
            ForceType application/octet-stream
            AuthType Digest
            AuthName "davusers"
            AuthDigestDomain /webdav /geep /foop /goop
            AuthUserFile davusers.digest
            Require valid-user
            SSLRequireSSL
            Options Indexes
    </Directory>

Die AuthDigestDomain-Direktive sollte alle durch den Bereich "davusers" geschützten Speicherorte in der Datei davusers.digest auflisten. Es weist den Client-Browser an, Benutzern den Zugriff auf die anderen Speicherorte zu ermöglichen, wenn sie für einen von ihnen eine Authentifizierung bereitgestellt haben.

Ordnen Sie auf der Windows-Clientseite die Webdav-Freigabe mithilfe dieser URL zu:

    https://www.myserver.com/webdav

Wenn Sie die Idee, mit SSL umzugehen, wirklich hassen, können Sie diese Anforderung mithilfe eines Registrierungs-Hacks auf dem Windows-Client deaktivieren. Fügen Sie die folgenden Zeilen in eine Nur-Text-Datei ein: "Installieren - BasicWebdav.reg aktivieren"

    Registry Editor Version 5.00

    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\WebClient\Parameters]
    "BasicAuthLevel"=dword:00000002

Klicken Sie mit der rechten Maustaste auf die Datei und wählen Sie "Zusammenführen". Sie müssen wahrscheinlich neu starten. Wenn Sie diese Änderung entfernen möchten, erstellen Sie eine Nur-Text-Datei "Entfernen - BasicWebdav.reg aktivieren". Speichern Sie diese Zeilen in:

    Registry Editor Version 5.00

    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\WebClient\Parameters]
    "BasicAuthLevel"=dword:00000001

Durch das Zusammenführen wird alles auf die Standardwerte zurückgesetzt.

Wenn Sie Ihre WebDAV-Freigabe bereitstellen können, werden Sie von einem weiteren Ärger angegriffen. Jedes Mal, wenn Sie eine Datei aus dem Remote-Ordner in einen lokalen Ordner ziehen, wird eine bedrohliche Warnung angezeigt:

These files might be harmful to your computer

Dies ist ein reines Beispiel für die berühmte "FUD" -Technik von Microsoft. Sie möchten, dass Personen, die eine Verbindung zu Apache-Servern herstellen, "Angst vor Unsicherheit und Zweifel" erleben.

Die Lösung hierfür ist etwas kompliziert und es gibt viele widersprüchliche Ratschläge im Internet. Der erste Schritt ist allgemein vereinbart:

Wählen Sie unter Internet Explorer-> Extras oder in der Systemsteuerung Folgendes aus:

Internet Options -> Security -> Local intranet

Allowed levels for this zone:

    Move the slider to: Low

Sites -> Advanced:

    Add the path to the remote webdav server.

Aber woher kommt dieser Weg? Dies ist der Grund, warum so viele widersprüchliche Ratschläge auftreten: Sie müssen nach einer erfolgreichen Verbindung den in der Titelleiste des Explorer-Fensters angezeigten Pfad verwenden. Dies hängt von Dutzenden von Unwägbarkeiten ab.

Zum Beispiel, wenn in der Titelleiste Folgendes angezeigt wird:

Computer webdav (\\www.mysite.com@SSL\DavWWWRoot) (X:)

Der Pfad, den Sie der Zone hinzufügen, lautet nur unter Verwendung des Serverteils in Klammern:

\\www.mysite.com@SSL

In Ihrem Fall wird der Servername in der Kachelleiste möglicherweise als IP-Adresse oder möglicherweise ohne @SSL angezeigt: Geben Sie einfach ein, was Sie sehen. Zurück aus den Konfigurationsfenstern und das Nörgeln hört auf.

Wenn Sie dieses Fenster das nächste Mal öffnen, sieht der Pfad folgendermaßen aus:

    file://www.mysite.com@ssl

Dies ist offensichtlich die kanonische Form, die Windows bevorzugt.

Im obigen Beispiel haben wir eine Ausnahme im lokalen "Intranet" (LAN) erstellt, aber Sie können dasselbe für Remoteserver tun, wenn Sie sich trauen.

Schließlich, und dies ist sehr wichtig, wird der WebDAV-Zugriff von Windows aus wahnsinnig langsam sein (wie bei Gletschern), wenn Sie diese Anpassung nicht vornehmen:

Internet Explorer->Tools->Internet Options
Select the "Connections" tab.
Press the "LAN Settings" button.
UNCHECK: "automatically detect settings"

Für jede Windows-Version sind neue Hacks und Patches erforderlich, damit WebDAV funktioniert. Man könnte den Eindruck haben, dass Microsoft sich von dieser Technologie bedroht fühlt oder wahrscheinlich nur möchte, dass sie mit ihren Servern funktioniert.

user2152363
quelle
Vielen Dank für die sehr detaillierte und gründliche Antwort. "Leider" habe ich mich wieder der Entwicklung unter Linux zugewandt, hauptsächlich weil ich nie eine gute Möglichkeit gefunden habe, auf Remote-Servern unter Windows zu arbeiten. Ich habe Ihre Antwort immer noch gebilligt, in der Hoffnung, dass Sie richtig sind :)
Mads Skjern
Hervorragende Antwort, @ hugh-sparks !!!
Paulo Coghi - Stellen Sie Monica
0

Die Antwort von @ user2152363 ist sehr gut. Der Vollständigkeit halber sind hier zwei alternative Lösungen, die Sie prüfen könnten:

  • Bergente , von denselben Leuten wie Cyberduck;
  • Rclone , ein Rsync-ähnliches Programm, das WebDAV unterstützt.

Beide unterstützen das Mounten eines WebDAV-Servers. Aber ich würde empfehlen, sie zuerst zu testen; Die Rclone-Entwickler sagen, dass ihre Mount-Option experimentell ist, und meiner Erfahrung nach hat Mountain Duck immer noch einige Fehler.

Onnonymous
quelle