• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Webdav Problem seit Update auf Suse 10.1

rprengel

Member
Vorab:
Unter 10.0 hat es die unten aufgeführte Konfiguration ohne Probleme getan.
Jetzt bekomme in der error.log vom Apache folgende Meldungen.
Ein Zugriff auf auf das Webdav-verzeichnis ist natürlich auch nicht mehr
möglich
Ich habe mir die Dokus im Suse Docbereich durchgelesen komme aber leider
nicht weiter.
Hat jemand einen Tip?


Der Fehler
[Wed Jun 07 23:27:49 2006] [error] [client 192.168.2.161] Provider
encountered an error while streaming a multistatus PROPFIND response.
[404, #0]
[Wed Jun 07 23:29:44 2006] [error] [client 192.168.2.101] Provider
encountered an error while streaming a multistatus PROPFIND response.
[404, #0]
[Wed Jun 07 23:29:44 2006] [error] [client 192.168.2.101] Provider
encountered an error while streaming a multistatus PROPFIND response.
[404, #0]


Meine httpd.conf

DAVLockDB /tmp/DAVLock
DAVMinTimeout 600



<Location />
#AllowOverride None
<Limit COPY GET PUT POST DELETE PROPFIND PROPPATCH MKCOL COPY MOVE LOCK
UNLOCK>
DAV On
order allow,deny
allow from all
#ForceType text/plain
AuthType Basic
AuthName "Fileserver"
Require valid-user
AuthUserFile /etc/apache2/htpasswd
SSLRequireSSL
</Limit>
</Location>
 

anniyka

Newbie
Hi

ich hatte auch das Problem, habs aber jetzt gelöst:

Code:
    Alias /dav /srv/www/vhosts/dav
    DavLockDB /srv/www/vhosts/tmp/DavLock.db
    <Location /dav>
        DAV On
        AuthType Basic
        AuthName LassMichRein
        AuthUserFile /srv/etc/passwd
        <LimitExcept GET OPTIONS>
                require user anniyka
        </LimitExcept>
        #Options Indexes FollowSymLinks
        order allow,deny
        allow from all
     </Location>

Der Trick ist die Option Indexes.

Mit dieser Option kannst du es Dir im webbrowser anschauen. ABER da gibt es dann keine Loginabfrage.
Ohne die Option, und wenn du z.B. in Konqueror "webdav://mein.server.de/dav" eingibts, dann funktioniert es. Sprich, im Webbrowser krigst Du dann nix zu sehen, aber über webdav kriegst du dein login und gut ists.

liebe grüße,
anniyka
 

anniyka

Newbie
Also.

Das funktionierte wunderbar unter Linux, aber mit XP gabs Probleme.

Um den Webfolder mit XP zu verbinden muss man den Port mit angeben, da anscheinend XP ansonsten den webserver als CIFS Server ansieht, also:

http://my.server.de:80/dav

dann gehts auch unter WindowsXP

liebe Grüße,
anniyka
 

anniyka

Newbie
Ist das nicht schön, man entdeckt immer etwas neues ;)

Also, XP kann mit obiger Methode zwar lesen, aber nicht schreiben. Ausserdem kann man mit obiger Methode kein Laufwerk erzeugen.

Um schreiben zu können hab ich meine LimitExcept geändert:

Code:
        <LimitExcept PROPFIND DELETE GET MKCOL PROPPATCH PUT>

PROPFIND ist irgendie beim login dabei, ich habs nicht ganz rausgefunden
DELETE erst dachte ich es geht alles, aber als ich auf Aktuakisieren gegangen bin, waren alle gelöschten Sachen wieder da. Damit bleibts weg ;)
MKCOL PROPPATCH hab ich hinzugefügt um ein Directory zu erzeugen
PUT um eine Datei hochzuladen oder zu erzeugen.
GET um eine Datei aufzumachen

Keine elegante Lösung, aber soweit ich herausgefunden habe, hat MS das Dav neu erfunden... naja, si haben es neu gemacht bei sich. es ist nicht mehr das "Microsoft Data Access Internet Publishing Provider Protocol" sondern eben "Microsoft-WebDAV-MiniRedir/5.1.2600"

Und die Authentifizierung klappt auch nicht so, weil sie ausgelagert ist und einen zusätzlich HEADER braucht um Basci-Auth zu verstehen.

Code:
Header add MS-Author-Via "DAV"

Das geht mit mod_headers.

Und um dann noch mit einem Laufwerk zu verbinden, musst du folgendes eingeben: \\my.server.de\dav
Es dauert ne ganze weile bis das loginfensterchen kommt, aber so gehts auch mit XP.

liebe grüße,
anniyka
 

anniyka

Newbie
So, das sind jetzt die letzten infos.

mod_headers wird benötigt, dies ist die konfig:

Code:
    Header append MS-Author-Via "DAV"
    DavLockDB /srv/www/tmp/DavLock.db

    Alias /dav /srv/www/dav
    <Location /dav>
        DAV On
        AuthType Basic
        AuthName "WebDAV"
        AuthUserFile /srv/www/etc/passwd
        AuthGroupFile /srv/www/etc/groups
        require valid user
        #Options Indexes FollowSymLinks
        order allow,deny
        allow from all
     </Location>

Benutzernamen habe ich als name@domain angelegt

Folgendes ist unter Windows zu erledigen:
http://support.microsoft.com/default.aspx?scid=kb;en-us;841215

mod_encode und mod_auth_msfix hab ich leider nicht zum laufen gebracht, deswegen der Domainname im Benutzernamen.

liebe grüße,
anniyka
 
OP
R

rprengel

Member
anniyka schrieb:
So, das sind jetzt die letzten infos.

mod_headers wird benötigt, dies ist die konfig:

Code:
    Header append MS-Author-Via "DAV"
    DavLockDB /srv/www/tmp/DavLock.db

    Alias /dav /srv/www/dav
    <Location /dav>
        DAV On
        AuthType Basic
        AuthName "WebDAV"
        AuthUserFile /srv/www/etc/passwd
        AuthGroupFile /srv/www/etc/groups
        require valid user
        #Options Indexes FollowSymLinks
        order allow,deny
        allow from all
     </Location>

Benutzernamen habe ich als name@domain angelegt

Folgendes ist unter Windows zu erledigen:
http://support.microsoft.com/default.aspx?scid=kb;en-us;841215

mod_encode und mod_auth_msfix hab ich leider nicht zum laufen gebracht, deswegen der Domainname im Benutzernamen.

liebe grüße,
anniyka

Bei habe ich das Problem sshfs und fuse eingrenzen können.
Wenn ich eine sshfs_Netzwerkanbindung starte spinnt webdav. Sobald die Verbindung abgebaut wurde geht es wieder.
Keine Ahnung was das soll.

Hintergrund:
mein Webdav Server steht in der DMZ und ich mounte ein Verzeichnis durch die Firewall auf einen Datenserver.
 
Oben